Перейти к содержимому

Рефакторинг 40 000 строк унаследованного кода

Единственный разработчик ушёл, документации не осталось. Восстановили карту системы и сделали изменения безопасными.

Клиент
B2B SaaS, продукт 7 лет
Отрасль
ПО для бизнеса
Год
2026
Срок
3 недели
Задача

Продукт приносил деньги, но каждая правка ломала что-то в другом месте. Команда боялась выкатывать релизы и делала это раз в два месяца.

Решение

Что мы сделали
и почему именно так.

01

Карта системы

Прошли репозиторий и историю коммитов, свели это в схему зависимостей и список зон риска.

02

Сеть безопасности

Написали характеризационные тесты на текущее поведение — включая две «баги», на которые опирались клиенты.

03

Обновление зависимостей

Закрыли 23 известные уязвимости в библиотеках, которые не обновлялись четыре года.

04

CI и релизы

Подняли пайплайн с тестами. Релиз перестал быть событием и стал операцией на 12 минут.

Результат

Что изменилось
и чем мы это померили.

40 000
строк разобрано за 3 недели
0 → 71%покрытие критичных путей тестами
23
закрытых CVE в зависимостях
12мин
полный цикл релиза вместо двух месяцев
Стек
PythonTypeScriptPostgreSQLDockerGitHub ActionsPlaywrightSemgrep
Таймлайн

Как это шло
по дням и неделям.

  1. Неделя 1

    Разведка

    Карта системы, зоны риска, план миграции.

  2. Неделя 2

    Тесты

    Характеризационные тесты на критичные сценарии.

  3. Неделя 3

    CI и передача

    Пайплайн, обновление зависимостей, разбор с командой.

Экраны

Как это выглядит
в схемах.

Это схемы экранов. Интерфейсы клиентов мы не публикуем без разрешения

Дальше

Похожая задача
у вас?

Опишите её в брифе. В рабочее время вернёмся с оценкой срока и стоимости в течение двух часов.