‘Technical debt’ is a tricky subject, according to a blog post by Albert Wenger of Union Square Ventures, primarily because it isn’t ‘capital,’ but innovation that needs repaying.
Wenger uses a standard Wikipedia definition for technical debt — ‘the eventual consequences of poor or evolving software architecture and software development’ — and explains that the debt “doesn’t just result from mistakes but also from evolving.”
Every startup should have technical debt, because that means they are committed to constantly building their technology, but like financial debt, founders shouldn’t seek to pay it back all at once. This could result in a ‘complete rewrite,’ which means upending your entire technology platform, a la Etsy, and trying to ‘rebuild a plane midway through flight.’ Also, you wouldn’t want to slow down development on current features — there is a ‘natural level of technical debt that should always exist.
The key is proportional allocation — a fraction of engineering should be working to ‘pay back’ technical debt at all times. The exact fraction is flexible, although Wenger suggestions focusing at least a third of your workforce on the issue, but no more than two-thirds.
Like anything in life, paying back technical debt is about balance. Take it from me, the unemployed guy writing blog posts all day!