Guide to Software Development KPIs

How to Measure and Improve Development Performance

Download the guide

or scroll to keep reading ↓

Overview

Why Measure Software Development Performance?

Most companies already track business metrics like revenue, customers, and churn. Frameworks like DORA are sometimes used to track how a service or application is performing.

Software development performance and business outcomes

Development performance metrics track a third dimension: how does our productivity change as our engineering team scales?

Effective engineering teams unlock a higher speed and scale of market acquisition through better customer experiences and faster time-to-market for new features.

While revenue and revenue growth are the best measures of business outcomes in tech-enabled industries, it is important to isolate development performance to understand if you are maximizing a product’s revenue potential in its market.

How to Measure Software Development Performance

When tracking development performance, it is important that:

  1. Track productivity as your engineering team scales, not just how apps and systems are performing (e.g. DORA metrics)

  2. Rely on quantitative metrics, not qualitative judgments, that work for any development team (vs. survey data, story points, etc.)

  3. Make setup effortless (requiring connecting no more than a Git provider) and fully automate metrics and insights

While you are your own best reference class, simple and standardized metrics allow comparison to industry software development benchmarks.

To start benchmarking productivity, the most important metric to track is Features per Engineer. Elite companies release more features to market than their peers.

In any engineering organization, some percentage of work is dedicated each cycle to reworking and maintaining existing functionality. Features represent the amount of new work that an engineering team is delivering.

Features are approximated using pull requests—measurable units of working software. Engineers create pull requests to notify team members when a new body of working code is ready for review. They are broken down into four types:

Pull request breakdown by work type

Features are defined as the proportion of pull requests that contain net new code (pull requests × percentage net new code).

While a balance of bug fixing and refactoring is needed to maintain and improve quality, companies should optimize for shipping more features on a sustained, long-term basis.

The Top Five Software Development KPIsWhat is a feature?

Measuring Development Performance

Most companies experience diminishing productivity returns as they scale — codebases become more complex, products get more mature, and performance converges to the mean.

Elite performers reverse the trend and reap the results — they improve productivity per engineer as they scale, unlocking their potential to drive higher acquisition of market share.

Consider an example: Acme, a retail company, that recently raised Series D funding and is expanding into new markets and geographies. Acme is hiring quickly in the engineering department, but productivity is dropping at an accelerating rate due to ineffective leadership and a lack of standardized processes. They are accumulating technical debt and it now takes weeks instead of days to release features to market.

Measuring returns to scale with software development KPIs

Acme is scaling up inefficiently.

Devasphere, a competitor to Acme, is also hiring, but less quickly as they invest in new processes and tools. For instance, they built out a top-notch onboarding experience for new developers, rolled out AI coding tools across their organization of over a hundred developers, and re-organized their product and engineering teams to better support expansion into new markets and geographies. It takes less than a day to release a feature.

Devasphere is scaling up efficiently.

Devasphere also implemented a Development Observability platform so that they have visibility into the ROI of their investments. They present engineering metrics to their board, which has confidence that they are building a world-class software development team.

Argon, a global retailer that operates in the same markets, was recently acquired by a private equity firm after a couple years of stagnant growth. They are focused on reducing costs across sales, marketing, and engineering.

Agile development has proven that teams perform better when they deliver working software frequently.

Argon shifted most of their engineering team offshore while maintaining quality after determining that those teams operated with a higher capital efficiency (a lower cost per feature) than onshore teams.

Argon is scaling down efficiently: as they scale down, their productivity per engineer is improving.

Measuring software development performance vs. scale

Improving Development Performance

Identifying bottlenecks can unlock new opportunities for growth. For instance, companies battling quality issues let technical debt accrue, resulting in compounding costs over time. Making investments in quality (e.g. refactoring legacy code, automating testing, building out a quality assurance function) can lead to a shift-left in quality and unlock future feature development.

Similarly, understanding the stages of lead time — the time it takes to commit, review, test, and merge a feature — can help you identify bottlenecks in the delivery process.

Companies with a culture of fast, iterative development generally have a faster lead time, while slower lead times usually indicate the presence of bottlenecks, delays, and less automation.

Shift left in quality to improve software development performance

Measuring and improving development performance is a continual process. By surfacing data at every level of the organization — including investors, heads of engineering, department heads, managers, and individual contributors — companies can create feedback loops that drive organizational change.

For instance, heads of engineering may track quarterly changes in efficiency and adjust hiring plans accordingly, while managers may use weekly reports to track their team’s work in progress.

Creating feedback loops with software development KPIs

Measuring engineering performance works best when combined with a culture of trust and transparency. A key consideration is protecting individual privacy, which enables companies to create a workplace that values psychological trust and safety, a key driver of innovation and organizational learning. Choosing the right metrics and implementing them in the right way is the key to setting teams on the path to high performance.

Better, Fast Development Wins Markets

Measuring development performance is essential for tech-enabled companies that want to stay competitive in today’s fast-paced market.

Companies that have visibility into development performance — including how their development teams are performing relative to industry peers — and create a culture of continuous improvement are most likely to win markets.

Start tracking your software development metrics

Connect your tools and visualize your data in minutes. When you sign up, you’ll get immediate access to your data. No demo or sales calls.