What Factors Influence Developer Productivity?
In recent years, a great number of businesses ranging from retail to banking have lavished their capital on software development, as part of the strategy for revenue growth. Whether the execution of software development is managed by an in-house team, an offshoring partner or an outsourcing supplier, one of the most common concerns of many CEOs, CTOs and CIOs is how to boost the return on investment.
While many business leaders approach this question from a high-level perspective, and thus prioritize overarching solutions, the key to business performance improvement probably lies in the executive team’s day-to-day experience, which top-level managers often overlook. However, by minimizing the small-scale friction and maximizing developer productivity, we can accelerate the project and launch new products sooner.
McKinsey & Company also shares this view. By April 2020, they published a report on the drivers of developer productivity. And they coined a term called “developer velocity”. This in fact has nothing to do with the velocity metric in Agile software development. “Developer velocity” means the company’s capability to help developers unleash their full potential and bring about the best results possible. These drivers fall into three main categories: technology, working practices, and organizational enablement.
Key drivers of developer productivity
This list of drivers was first validated by over a hundred CTOs, CIOs and other senior engineering leaders. It then became the basis for an in-depth survey of senior executives from 440 large enterprises. They are to weigh in on the importance of each criterion. And they evaluate how much their firm has lived up to these standards, too.
The very first takeaway from this report is that the four factors with the greatest impact on developer productivity are tools, product management, culture and talent management.
Many business leaders consider tools as the most important drivers of business success. But only 5% of the executives surveyed acknowledge and rank it among the top three enablers. It’s also noteworthy that although the top-level managers believe agile ceremonies at a team level play a crucial role in improving business performance, it is not fully aware by the executives across different industries.
How does developer productivity influence business performance?
Researchers have examined how developer productivity is correlated with revenue, total shareholder returns and operating margin. They have also taken into account other non-financial business performance indicators, namely customer satisfaction, innovation, talent management and brand perception. As a result, they figure out that companies with high DVI score, a metric used to assess the company’s capability in improving developer productivity, tend to achieve better outcomes.
In particular, the companies among the top 25% best working environments for developers earned a revenue growth of five times as much as that of the bottom ones during the period of 2014–2018. Shareholders’ returns are 60% higher and operating margins are 20% higher, too. Nevertheless, all the non-financial business performance indicators are much more promising. These are the companies that attend closely to the improvement of their developer productivity by removing the points of friction at work and investing on the critical drivers. The report also shows that the sectors that are mature in digitalization, specifically software, discrete manufacturing and financial services, have higher DVI scores.
How to improve developer productivity?
Invest properly in tools
Since tools are apparently the primary drivers, it should be the first and foremost area of improvement that every leader must focus on. Equipping your team with best-in-class tools, be it planning, collaboration or development tools, definitely result in better performance. What we could learn from the top 25% companies with the highest DVI score is that we should let developers have some certain choices, depending on their needs and interests. But it is necessary to limit the number of tools to avoid uncertainty and unexpected mismatches.
Some companies adopted low-code or no-code platforms to let their team develop applications without prior knowledge of software development needed. It also helps save developers time for more important tasks.
Nurture a culture that encourages psychological safety
Environments that do not tolerate mistakes, albeit minor, would cause anxiety among developers and thus eliminate the possibility of major breakthroughs. It is therefore vital to build up the systems that could minimize the cost of errors. Controlled releases, feature flags (the ability to turn features on and off without redeploying code), and automated rollbacks are some of the capabilities worth investing in.
Moreover, developers must feel psychologically safer to work in a culture that embraces failures and contingencies. They must be encouraged to learn from their mistakes. Open sharing and constructive reflection within the executive team are the key to higher staff retention rate and continuous improvement. Rewards and recognition policy must also be worth consideration.
Empower every member of the product management team
Regarding this area of improvement, most practitioners lean towards treating it as the whole of various balanced attributes rather than focusing on any single one. And the product management team are expected to have knowledge about not only technical aspects but also about the business and the market. Every developer should be ready to wear the product manager hat to see the big picture of their works. And they could also see how their works are in line with customer needs and business priorities. This has become a must if we want the product to be launched on time, on budget and on scope.
Initiate the policies of attracting and retaining talents
In accordance with the rise of software engineering in the market, the number of rock-star developers have continuously increased. Nonetheless, only the enterprises that employ the most talented developers win the chance to be on top. And no surprise that the company with the highest DVI scores really know how to keep their staff.
Developers at those companies receive better incentives and training programs. They also have a clearer vision of their career path. This leads to a higher level of employee engagement and hence, a more productive working time.
So, the question to all business leaders is how to make the software talents happy and motivated. Answer that question, and your business can fulfill the last missing piece of this developer productivity picture.