Advisor CTO

The Practical Guide to Managing Technical Debt

Stop fighting over rewrites vs. features. How to quantify, prioritize, and pay down technical debt while keeping the business moving.

1. What is Technical Debt, Really?

Technical debt isn't just "bad code." It's the implied cost of additional rework caused by choosing an easy (limited) solution now instead of using a better approach that would take longer. Like financial debt, it incurs interest in the form of slower delivery and increased bugs.

Interactive: Tech Debt Interest Calculator

Estimate how much time your team is losing to technical debt each week.

Total "Interest" Paid Per Week
Hours

2. The 20% Rule

A common mistake is trying to halt all feature development for a "rewrite month." This inevitably fails. Instead, negotiate a steady state where 20% of engineering capacity is dedicated to paying down debt, prioritized by the areas that cause the most pain (friction) for current feature development.

Frequently Asked Questions

How do I convince management to care about technical debt?
Translate it into business terms. Don't say "the codebase is messy." Say "Because of the current architecture, building the new billing feature will take 6 weeks instead of 2."
Should we just rewrite from scratch?
Almost never. The Strangler Fig pattern is usually a better approach—migrating piece by piece while keeping the system running.