Technology leadershipPeople · Systems · Delivery

Notes

Engineering5 min read

Technical debt is a loan you already took

We started writing down the terms of every shortcut — what we skipped, why, and what it costs per week. Sunlight changed which debts we actually paid.

The debt metaphor is older than my career, but most teams only use half of it. Everyone talks about the principal — the messy module, the outdated framework. Almost nobody tracks the interest: the twenty minutes every engineer pays every day working around it. We started measuring that, and it changed which debts we actually paid.

Not all debt is the same loan

  • Deliberate debt — "ship the workaround now, fix it after the school year starts." Fine. That's leverage, the same as any loan.
  • Accidental debt — we knew better and rushed anyway. Costly, but at least visible.
  • Bit-rot debt — code that was right when written and wrong now because the world moved. The sneakiest kind, because nobody ever decided anything.

The register

Our rule now: taking a shortcut requires a one-line entry in a debt register — what we skipped, why, and what it costs per week that it lives. It's ruthless sunlight. Some entries turn out to cost nothing and stay forever, guilt-free. Others visibly bleed us, and the register is how they win a place on the roadmap without a shouting match.

Refactor where you're about to build, not where the code offends you. Debt in a module nobody touches is free. Debt under this quarter's feature is compounding.

The mindset shift that stuck: technical debt isn't an engineering failure — it's a financial instrument. The failure is borrowing without writing down the terms.