Технический долг
Подразумеваемая стоимость дополнительной переработки, вызванная выбором простого (ограниченного) решения сейчас вместо лучшего подхода, который занял бы больше времени.
Определение
Технический долг — это метафора, сравнивающая решения в разработке ПО с финансовым долгом. Как и финансовый долг, техдолг накапливает "проценты" — чем дольше он остается, тем больше усилий требуется для его устранения. Распространенные источники: быстрые фиксы, отсутствие документации, устаревшие зависимости, отсутствие тестов, copy-paste код.
Почему это важно
Исследования показывают, что разработчики тратят 33% времени на работу с техническим долгом. Неуправляемый техдолг замедляет разработку фич, увеличивает количество багов и усложняет онбординг новых разработчиков. Компании вроде Stripe и Shopify выделяют 20-30% инженерного времени специально на погашение технического долга.
Пример
Команда хардкодит конфигурационные значения, чтобы успеть к дедлайну. Это создает технический долг, который позже придется погасить рефакторингом с использованием переменных окружения.