Valera leads the mobile developer experience team at Slack. Prior to Slack, he led the development of Espresso at Google and contributed to the infrastructure that runs hundreds of android tests per second. He is passionate about building (and presenting about!) infrastructure that makes the lives of developers more pleasant and productive.
Valera Zakharov
Gamifying Reduction of Technical Debt with Code Health Score
All codebases have technical debt. Sometimes we reluctantly pass by leaving a TODO to clean it up later and sometimes we act on the urge to go on refactoring binge to clean it up. Addressing technical debt can be rewarding and useful, but how can we make sure that it is not simply left to the whim of a good samaritan? And can such work be consistently seen and encouraged by engineering leadership?
Following the trope of "you can't improve what you don't measure", at Slack, we have employed code health score: an empirical measure that provides visibility into cumulative and team-based technical debt to address these questions. But measurement alone isn't enough; it's equally important to integrate such measurement into the day-to-day engineering culture of the team. This is where it helps to make it a fun competition.
This talk will provide the formula for building a code health score for any codebase, touch on the nuances of its implementation using Android static analysis, and share what we have learned about integrating this tool into our engineering process.