Что такое технический долг

«Что такое технический долг» — вопрос из категории Управление рисками, который задают на 23% собеседований Менеджер Проектов. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Техдолг — это компромисс между быстрым решением и идеальным кодом. Это накопленные проблемы: устаревшие библиотеки, костыли, плохая архитектура, отсутствие тестов.

Виды:

  • Сознательный — осознанный выбор скорости над качеством (например, хардкод для MVP).
  • Неосознанный — результат неопытности или нехватки времени.

Пример кода с долгом:

# Техдолг: хардкод вместо конфига
def calculate_tax(income):
    return income * 0.2  # Ставка налога может измениться

Чем опасен:

  • Замедляет разработку (баги, сложность изменений).
  • Дорого исправлять позже.

Как управлять:

  1. Фиксировать в трекере (Jira, GitHub Issues).
  2. Планировать регулярный рефакторинг.
  3. Балансировать между новым функционалом и чисткой кода.

Игнорирование техдолга превращает его в "технический кризис".