James Hobbs Discuss an engagement

How should we prioritise technical debt against new features?

Short answer

Prioritise technical debt by the constraint or risk it creates for the business. Explain the effect on customers, delivery, operating costs or resilience, then compare the improvement with other work. Agree a concrete intervention and a way to check its value rather than treating all older code as equally urgent.

Describe the consequence in ordinary language

“This component needs refactoring” is a proposed activity. “Every pricing change requires edits in three places and has caused repeated billing errors” identifies a business problem. The latter gives leaders a basis for choosing what to do.

Separate material security or continuity risks from avoidable work and ordinary preferences about code structure. They may require different decision owners and timescales.

Compare the options

  • What happens if we leave it alone for now?
  • Which customer or business commitment does it constrain?
  • How often do we pay the cost in delays, incidents or manual effort?
  • What is the smallest change that would reduce that cost?
  • What feature or other improvement would we defer?

Use a range where the evidence is uncertain. A precise-looking estimate based on guesses can make the discussion less honest, not more commercial.

Make the benefit visible

If the aim is faster changes, observe the time and effort required before and after. If it is resilience, check the relevant failure and recovery behaviour. Stop or adjust the work if the expected benefit does not emerge.

I connect architecture and engineering practice with commercial decisions. At Festicket that included redesigning the platform during rapid business growth; at Remo it included reducing infrastructure and vendor spend by more than 80% over 14 months.

Relevant platform and commercial experience

Related questions

Should we reserve a fixed percentage of time for technical debt?

It can be a planning aid, but it should not replace prioritisation. Explain the work and its value, and make exceptions for urgent risks or changes that remove a major constraint.

How do we persuade the CEO?

Present the consequence, options and recommendation in business terms. Invite discussion of the opportunity cost rather than asking for permission to clean up code in the abstract.