quarter-hour cleaning victory šŸšæ

Kevin Salter
Kevin Salterā€™s Blog
2 min readJul 4, 2016

If youā€™re working on a codebase thatā€™s more than a few months old, there are going to be rough edges. Lines of the code will have been left in a less-than-ideal stateā€“ casualties of shipping on time and within business requirements. While thatā€™s a realistic byproduct of continuously delivering software to end users, youā€™ll need a strategy for dealing with technical debt. As the codebase and team grows, you need to ensure that you can keep delivering updates to your product at a fast velocity and with the highest quality possible.

At 7Geese we started dealing with tech debt by employing a really simple strategy that has revealed itself to be quite powerful over the past several quarters. We call this strategy 15 minute cleaning wins!

The premise is simple: choose one task that addresses a piece of technical debt, create a ticket for it, and include it in your sprint each week.

Thatā€™s it!

With this simple method comes several benefits:

  1. Itā€™s a low pressure situation where you can make small, incremental improvements. Youā€™re not going to set aside a day or two (or seven) ā€œone dayā€ when thereā€™s time. Itā€™ll never happen.
  2. It also fits nicely into the rhythm of a work week. Sometimes it can serve as a nice change-of-pace from a larger project, and other times it can kick-start a day when itā€™s the first ticket you pick up.
  3. Finally, it scratches that itch we all have as developers to clean things up and right past wrongs, making the codebase easier to read and maintain.

The cumulative result is amazing quarter-after-quarter, and you spread out the pain of repaying technical debt over time.

Weā€™ve named these tasks 15 minute wins in an effort to force ourselves to narrow the scope of every task. Of course, sometimes it takes longer to complete each ticket, which is why I typically name mine quarter-hour cleaning victories, because I think it sounds longer šŸ™ƒ (A close second was ā€œ9 billion shake sanitization successā€ ā€¦well, maybe not that close).

As a final note, itā€™s important to protect as many changes as you can from regressions by using linters (write your own rules if you have to!) and unit tests.

Hey, if you like building cool things, collaborating with a super talented team, and want to work at a company with a great culture, 7Geese is hiring.

--

--