Organizations often focus on results over anything else. Specifically, the focus is on metrics around revenue and growth, which on the surface, makes nothing but sense. At the same time we also know that bad metrics will undoubtedly produce bad outcomes. Squeezing customers for every last nickel often means the customer will find someone else to buy from. Trying to release more features or products may dilute the brand or risk quality. More lines of code doesn't mean teams are productive. While it is easy to bad metrics, what makes a good metric? Put simply, good metrics build organizational trust.
Trust is the key element of a high functioning team, no matter where they sit in an organization. Trust allows for autonomy and creativity. Trust provides the foundation for effective collaboration. Trust enables psychological safety. Trust allows for failure and empowers learning. Trust is why teams can accomplish more than the sum of their members. Building trust at an organizational level is a matter of establishing metrics that expose the trustworthiness of different teams.
For example, if there is a team that misses deadlines, the result will be a lack of trust. The intrinsic metric is the ability to deliver on time. But does that consider the actual work? What if Product didn't talk to the team when setting deadlines? What if the team actually works at a high velocity in terms of what it delivers, but the subject matter is complex and contains a good deal of unknown challenges that come up? What if the team is constantly interrupted by other teams that need their expertise? In the absence of these considerations, two things happen.
- Trust erodes in the team's abilities.
- Organizational inefficiencies stay hidden.
There is no need to remove the delivery timeline as a means of measurement, but it is important leverage other metrics as well. Metrics are a means of moving focus away from people or groups and towards behaviors. If we understand a team that is executing well and delivering consistently, then that changes the discussion when a deadline is missed. You can trust the team is doing its best work and that opens the door to digging deeper.
These ideas aren't new. Blameless Postmortems are a great example of building trust by moving the intrinsic metric from the number of failures to how much was learned. SRE as a field is similar in that it moves conversations around reliability outside of architecture and towards essential signals. SREs avoid questioning technology decisions, potentially pointing the finger at failure, and instead gives the team clear goal. At the core of these practices and systems is establishing organizational trust through measuring intrinsic or explicit metrics.
I've focused on engineering but this concept is not limited to building software. Take hiring for example. Often times HR departments have targets around the number of hires and how long it takes to hire someone. Again, this time based view makes sense. We want recruiters to be efficient in order to avoid being bottlenecks for an organization. But hopefully it is clear by now that these metrics open the door to bad hires. A recruiter may pressure a team to say yes to someone they were on the fence with in order to improve the metric. Immediately we should also recognize that endangers the trust a team may have in the recruiters and in the organization as a whole. So how can we fix it?
The goal of any new team member is to help the team achieve its goals. The team should have metrics around how it is performing against its goals. The metrics don't have to be increasing revenue. A team might have goals that PRs get reviewed with 4 hours or that there are no more than 1 page per week. The point being is that if the ability of the team to meet goals doesn't improve, then we can conclude that the hire may not have been a good one. Obviously there needs to be consideration for ramp up time, but I'd also argue that even taking that into account, a good hire (at least a good software engineering hire) often can be up to speed very quickly and contributing.
Lastly, the ability for an organization to create trust by utilizing metrics is never easy. The work feels like meta-work and a waste of time compared to executing on a customer request. It is also technically challenging to implement a metric depending on the what tooling and systems are available. The irony here is that metrics and the ability to measure is typically seen as a sign of maturity. Our cars have a myriad of sensors throughout and allow measure minute, yet critical metrics about how the car is running. Rather than thinking instrumentation is a waste of time, consider it an investment in the future that makes high impact optimizations possible.
If you want to build trust in your organization, a great tool is to focus on what you measure. You can always iterate on the measurement and build trust in the process. If you avoid maturing metrics, you'll undoubtedly find they are only sowing seeds of frustrating that end up with organizational disfunction.