Разработка программного обеспечения лишена физических ограничений, присущих зданиям или мостам, что позволяет коду деградировать бесконечно. В отличие от физических объектов, ПО не имеет жесткого предела прочности, поэтому его производительность может снижаться, а сложность — расти без риска немедленного обрушения системы.
Бывший инженер Amazon описывает цикл накопления технического долга в крупных компаниях. Из-за высокой текучести кадров знания о системе теряются, документация устаревает, а код обрастает «кладбищами с привидениями». Страх перед изменениями в таких условиях блокирует попытки упрощения архитектуры.
Попытки исправить ситуацию часто инициируются новыми менеджерами ради карьерного роста. Такие проекты требуют расширения штата, но регулярно проваливаются из-за неполной информации и сложности системы. В итоге остатки неудачных архитектурных решений встраиваются в продукт, а штат сотрудников остается раздутым.
Для борьбы с устаревшими системами мегакорпорации часто создают ответвления — новые обособленные системы для свежих задач. Это не решает проблему технического долга, а создает дополнительную нагрузку, так как старую систему приходится поддерживать параллельно, усложняя выбор инструментов для новых функций.
Автор отмечает, что бизнес может столкнуться с критическими проблемами задолго до того, как код окончательно выйдет из строя. Поскольку ПО может работать крайне неэффективно в течение долгого времени, компаниям необходимо бороться с причинами деградации архитектуры, не рассчитывая на возможность «жесткого сброса» или банкротства кода.






