Engineering leaders should use a combination of goals and metrics to motivate their teams to make the biggest possible impact.
Metrics have long held a tenuous position in software development circles. Leaders want to know how teams are doing and where they can help unlock greater efficiency. Teams want to do great work and progress in their careers, and not feel like they are being micromanaged. A disconnect often emerges here from too much emphasis being placed on execution metrics, particularly throughput, delivery, and deployment frequency, which are trailing indicators that rarely motivate people.
Metrics are a powerful tool to help teams do great work. They can tell you a ton about what is and isn’t working. But execution metrics are not the goal. The best teams I’ve worked with had a clear understanding of the business metrics they were driving towards and treated their execution metrics as a leading indicator, or a debugging tool for when they felt like they weren’t hitting these goals.
Leaders should spend their time either helping teams connect with those big-picture goals or helping them solve the problems that their operational metrics are identifying.
Set goals that meet business objectives
There are a few things you need to do first to get your developers to track the right metrics and be excited about using them:
- Clearly define team goals and connect them to organizational goals
- Collaborate on business metrics that are aligned with team goals
- Leverage execution metrics to surface challenges
The teams in your engineering organization exist to deliver against the goals of the company. How each team contributes should be obvious to you and to the team. That means they need to understand where you’re going and the role they play. They also need to know what success looks like. It’s unlikely that the overall success of your business is measured in deployment frequency. Help those teams understand what business success looks like and then help them find a business measure that they can own and which relates to that success.
When developers have clarity on the company’s mission and vision, they can grasp how their contributions directly influence customer and organizational success. This insight is a strong motivator. As a result, if the team feels like they are not fully hitting those business goals, they will seek out more information for troubleshooting and improving their own work. At that point, they will be much more interested in what good execution looks like than if a CTO is telling them to deploy more often.
Apply the right metrics in the right situation
We’re all drowning in data, yet we often lack a clear understanding. When we make metrics the goal, we focus on the metrics instead of what the metrics are telling us. Instead, treat metrics as an important tool to help you understand and start conversations.
The most insightful and relevant metrics for developers typically fall into three categories: business, velocity, and team health.
The key to unlocking value from engineering efforts is connecting those efforts with easily understood business objectives and associated metrics. Business metrics are all about impact and outcomes. From growing customer count and usage, to increasing operating margins, engineering teams can have a tangible impact on the trajectory of a company. With a clear connection between the work they are doing and this type of impact, engineering teams will start to think about how they can create more impact with less effort.
Common business metrics range from cost of acquisition and lifetime value, to operating costs and gross margin.
Execution metrics measure the speed and efficiency of software delivery. This category of metrics is primarily proxy metrics or leading indicators for delivering business metrics. Once teams are bought in on moving the needle on business metrics, they will start to ask how they could do more faster, or with less effort. That’s when they should start to look at their own execution metrics for clues.
The first clue will likely be in predictability. If delivery isn't consistent and predictable, it's difficult to see improvements in velocity. On the other hand, teams that dig into the causes of inconsistency tend to uncover a rich set of information about the things that are impacting their effectiveness.
Common execution metrics include throughput, change lead time, mean time to recovery, and change success rate.
Team health metrics
Team health metrics are easily overlooked, but are an important counterbalance to the other two categories. It’s entirely possible to achieve great business outcomes and execution at the expense of team health. At least for a short period. Luckily, it’s also possible to achieve those outcomes as a result of great team health. Measuring how team members are feeling gives a clear sense of which of those camps you’ve fallen into. And in the case of healthy, high-performing teams, you will get great feedback on how things can be going even faster.
Organizations can collect and track team health metrics in different ways, either through surveys or by having managers lead 1:1 conversations to understand how engineers are feeling.
Common team health metrics include job satisfaction, growth, opportunity, and sentiment toward teammates and the company.
Make metrics a team effort
Software delivery is a team activity with team outcomes. That means that execution metrics can feel intrusive for individual contributors. They can introduce thoughts about how they may be assessed in their next performance review, that they are being monitored, or a sense that executives or the organization at large may not fully grasp the intricacies of the complex inputs and outputs of software development.
Instead, thinking about metrics from a team perspective can foster a sense of unity. The emphasis shifts from scrutinizing individual performance to assessing collective progress. Since the entire team shares a common goal, they will willingly offer assistance to help individuals learn and, in turn, improve the team’s overall performance.
Team-level metrics also create a sense of responsibility for individuals. When others are depending on you, you want to do your part.
Ultimately, the success of an engineering team hinges on more than execution metrics alone. You need clarity on team goals. People need to understand the business metrics and be motivated to deliver because they’re excited about what they’re doing.
Focusing on business metrics allows teams to understand the why and the what that they are building and how their contributions align with the company’s goals and visions. Execution metrics become a tool for diagnosing issues or improving delivery against goals that are much more motivating.
Finally, great work is about continuous improvement. Metrics are a tool to expose opportunities to be better. No matter where you are on the path toward your goals, take the time to reflect on progress and learn from where you missed. Push yourself towards stretch goals and take the time to acknowledge all that you’ve achieved along the way.