Measuring Developer/Team Productivity in COVID times
Even more in these times of remote working, measuring developers and team productivity is more important than ever. Let's have a look at the new SPACE framework.
Measuring developer productivity is hard and very subjective. Most managers do it based on perceptions, ambient mood, number of PRs or number of happy customers! This was hard when everyone was in the same room but now, with remote work, a lot of feeling and perceptions are biased and even completely unavailable. This surely lead managers to rely on more concrete measures like actions, online availability and number of showers per week (as measured by the number of time developers wear a cap or keep the camera closed!)
In the short term, measuring performance was not the top priority for most companies. Just keeping a minimal delivery flowing was often more than enough, but as time goes and remote work becomes a semi-permanent reality, the capacity to measure individual, teams and overall organization productivity will become more and more important. Not just to assess if we're doing good as an organization, but to make sure we keep our developers happy, motivated even if they are physically isolated from each other. It all starts with talent and motivation. The rest measures the capacity of your organization to maximize what you get from this motivated employee, by providing the right tools, the right tasks, the right teammates and within a winning context for everyone. There's nothing like delivering crappy software to demotivate a talented team!
While researching the productivity measurement field, I came accross this new research paper proposing a productivity assessment framework for individuals, teams and organizations. They state (a lot of time) well known facts that productivity cannot be measured by a single metric, being the number of lines of code in one hand to produced/perceived value on the other. They propose a set of metrics grouped in 5 axes and adaptable to various levels of your organizations. Most of these metrics are pretty subjective, but if consistently measured over a decent period of time, they might help measure a certain level of productivity and identify actions and areas of improvements, which is exactly what we need from an assessment framework. The major problem with subjective metrics is that they cannot be easily aggregated. So you can't just bubble up aggregates of individual measurements at teams and the same at organization levels. They need to be properly weighted based on various perception factors like gender-bias, personnality, etc. As much as you can't compare two organizations with this framework, it's very hard to compare teams and individuals.
So the way to use such a framework is by comparing the variation of results for each single subject over time. You can perform some aggregation at team level and compare the same aggregation over time, but you need to avoid comparing teams and individual productivity. If used properly, this framework can help setup a good productivity dashboard for your remote workers and give you some key insights on the level of satisfaction, motivation and communication in your teams, which might force you to rethink portion of your process, team structure, etc.