What is the goal of developer productivity?

Kevin Andrews
GitClear
Published in
4 min readNov 17, 2017

--

According to the Bureau of Labor Statistics, The projected percent change in employment from 2016 to 2026 for all occupations averages 7 percent. The expected growth rate for software developers is 26%. Considering the change that software development has had on our world in the last few decades, one can only imagine what the future holds for this industry. Luckily, we can prepare for the future today by analyzing past data about developer output.

“What is measured gets managed.” — Peter Drucker.

When someone utters the phrase “Big Data,” there are usually two reactions: panic and fear surrounding privacy, or excitement about the endless possibilities. In the most simplistic form, humans have evolved thanks to data — we receive inputs from the world and we react accordingly. If this, then that. Sound familiar?

Naturally, we realized that we could start tracking and analyzing this data we had collected. And so much so that there are now a plethora of job titles focused on analysis of anything imaginable.

What’s the point?

The point is that we’ve put a massive amount of effort into data. Collecting it, studying it, testing our theories, and repeating the process. Data has massively increased the effectiveness of the work we do on this planet. We have proven that change is exponential — and data is really what makes that true.

Here’s the problem:

For years, software development analytics has been an underdeveloped field. Often it is thought to be impossible, and for good reason. Metrics that other industries use don’t typically apply to software development.

Software development is a highly numerical field, yet is often difficult to measure due to it’s creativity. With other professions, like content creation or advertising, productivity can be measured through output, such as how many posts they create, or engagement. However, for software developers, like designers or architects, measuring productivity is more elusive. For an architect, it’s not about how many lines they draw to make a blueprint, but the quality and durability of the structure that’s created.

Like architects, software developers solve problems. Like many problems, the issues facing a developer can be solved in many different ways. Let’s say this architect is designing a bridge. First, the architect needs to choose a style for the bridge and select its material from thousands of possibilities. This is similar to a developer choosing a code language. They first need to choose one out of hundreds of coding languages; each serving its own purpose. Once a language is determined, it is up to the developer to decide the best method to solve the problem. The square peg should fit in the square hole, but what if there’s a simpler method…

There’s always another way.

You may be thinking, “I get that it’s complicated, but what does that have to do with measuring productivity?”

The problem is, all developers are different and solve problems in different ways. How can you measure their output in a way that doesn’t take away their creativity? The oldest measure in the book is counting lines of code. Obviously more code is better, right? Wrong. You can read in more detail about why more code isn’t always better, as well as GitClear’s solution to this problem here.

There have been many other solutions proposed throughout the years. However, none of them have been good enough to become the industry standard. We firmly believe there is an undiscovered solution to increase productivity and growth, and I plan to explore this and continue to write on the topic.

All of this to say: What is the goal of measuring developer productivity?

From correctly forecasting products, to analyzing a new hire, there are many answers to that question.

However, the true purpose and goal of measuring developer productivity is to identify roadblocks and inefficiencies that are getting in the way of developers creating and innovating.

In many ways, software developers are paving the future for us. The question then becomes: What can we do to help?

Follow GitClear for more on the topic of developer productivity. If you have any comments please reach out and we would love to discuss this topic with you.

--

--