We’ve all been there – slogging through a codebase you barely understand, minor changes becoming rabbit holes of complexity, and, despite your best efforts, dangerous bugs lurk around every corner.
The diagnosis is obvious: you’re neck-deep in tech debt and it’s time for the team to dig itself out of this hole. If only you were given time and space to clean up the worst code, all would improve, right?
But how should we convince the team to tackle the debt? There is always a backlog of competing priorities (Product features! On-call emergencies!), and tech debt that’s ‘obvious’ to engineers isn’t necessarily compelling to all stakeholders.