How do we deal with years of accumulated technical debt in our storefront?
Nobody funds a project called “pay down technical debt”. They fund projects that make releases faster and outages rarer, which is the same work described honestly.
Make the debt visible
Produce an inventory: heavy core customisations, unsupported dependencies, missing tests, manual deployment steps, undocumented integrations. For each, record what it costs — hours per release, incidents per quarter, features it blocks.
Prioritise by cost, not by ugliness
Some of the worst-looking code is stable and untouched, and can safely be left alone for years. The debt worth paying is the debt you touch every sprint.
Fund it inside feature work
Attach remediation to the features that pass through that part of the codebase, and reserve a fixed share of each sprint for it. It is slower than a dedicated project and far more likely to actually happen.









