Consequently, technical debt slows down developers, causing the average organization to waste 23-42% of their development time. This isn’t merely a financial issue. Poor code impacts quality of life as it introduces stressors like overtime and missed deadlines. Few people enjoy debugging a production crash in incomprehensible code. So why do organizations fail to act?
The key problem is a communication gap between engineering and business. Code quality is an abstract technical concept alien to most business managers. Consequently, code quality gets ignored at the business level and remains a hard sell for engineers. But code quality improvements can be translated into tangible business outcomes such as faster time-to-market and fewer defects.
Today, refactoring is a mainstream engineering practice. However, beyond smaller improvements, large refactorings and re-designs typically need buy-in from product management.