**Disclaimer: We're really passionate about performance in software development, so read at your own discretion 😂**
Many years ago, I submersed myself in the terrifying world of developer metrics, performance, and productivity.
By a candle, in this allegorical cave, I spent hours reading everything there is to know about improving velocity and deliverability in the software development life cycle.
At the end of this journey, I was convinced that cycle time, velocity, code commits, pull requests, # of code reviews, and # of bugs reported were the ultimate indicators of performance, the holy grail of metrics.
I researched this subject exhaustively because I wanted to help my engineering managers be better leaders and my software developers better coders. What happened after that transformed my life and set me on a different path.
Here’s Some of Our Backstory
When I started codequest, I wanted to run performance reviews differently. I wanted my regular meetings with my developers to be objective, not ego-driven, and based on data.
But it soon became apparent that performance was hard to measure and could be easily gamed. Also, while performance metrics could in some cases find patterns, they failed to really consider the multidimensional aspects of building technology. There was something missing, and that was the soft side of software development, the part that is holistic and developer-focused.
First Lessons Learned
- Whatever methodological system you use, it should also help your developers be better people.
- Your developers shouldn’t be slaves to one methodological system.
Other Solutions?
They weren’t any better.
I came across companies like Pluralsight (Flow), LinearB, Haystack and Waydev, so I went back into my allegorical cave. I scoured their websites, studied their use cases, examined their Value Propositions in great depth. I got on calls with their sales people and tried out their solutions.
To my shock and surprise, there was not a single mention of software developer happiness, job satisfaction, or even burnout, which, according to research by Jellyfish, was considered the single greatest challenge over the next year for 15% of their survey respondents.
Many of these companies claimed that their engineering intelligence platforms solved all the problems. But where one problem is solved, others quickly manifest. Deep-diving into performance metrics to unearth inefficiencies “in real-time” failed to show, in my opinion, the most important factor of project success - wellbeing!
Also, the way many of these companies presented performance data would make it really easy for abuse and misuse by engineering managers, like it was a tool of repression instead of empowerment.
In conclusion, any company that is betting all they’ve got on performance metrics alone is hanging on by a thread. They are desperate to create value out of the wrong expectation. They are creating solutions that allow for engineering managers and technical team leads to squeeze everything they can out of their software developers before their departure due to a lack of humanity.
Yeah, it might be true that metrics can spot bottlenecks in the software development process, but if people are happy and motivated, those bottlenecks will naturally go away.
At the end of the day, software development is a creative, sustained, people process. And that’s why your developers’ motivation and happiness should be a top priority. Only when this becomes the rule and not the exception, only when developers are energized, empowered, and inspired to build something cool, then cycle time and all the other metrics will be improved.