Fortech
  • Aутстаффинг
  • Аутсорс
  • Веб-разработка
  • Мобильная разработка
  • ИИ-решения
  • UI/UX-дизайн
  • Техническая поддержка
Наши продуктыКейсыКонтактыО насБлогКарьера
Связаться
Наши продуктыКейсыКонтактыО насБлогКарьера
Связаться
Fortech
Юридический адрес
344011, Ростовская область, г. Ростов-на-Дону, Лермонтовская ул, д. 22, офис 6, 7, 8
ИНН / КПП
6154162274 / 616401001
ОГРН
1226100005922
ОКВЭД
62.01 Разработка компьютерного программного обеспечения
Код вида деятельности в области IT
1.01, 1.04, 1.05, 1.06

Услуги

  • Аутстаф
  • Аутсорс
  • Веб-разработка
  • Мобильная разработка
  • ИИ-решения
  • UI/UX-дизайн
  • Техническая поддержка

Компания

  • Наши продукты
  • Кейсы
  • Контакты
  • О нас
  • Блог

Соцсети

Аккредитованная IT-компания
Запись №25727 от 13.04.2022

Минцифры России

Позвать нас в тендер

  • bidzaar
  • B2B-Center
Контент © fortech.dev • 2026Политика конфиденциальностиПолитика обработки персональных данных
Главная/Блог/Реанимация ИТ-архитектуры: как провести глубокий рефакторинг Legacy-системы без остановки бизнеса
Бизнес6 апреля 2026 г.7 минут

Реанимация ИТ-архитектуры: как провести глубокий рефакторинг Legacy-системы без остановки бизнеса

Как обновить устаревшую ИТ-архитектуру и снизить техдолг, не прерывая работу продукта. Поэтапный план рефакторинга, метод Strangler Fig и реальные кейсы в финтехе и логистике.

Антон СтороженкоАнтон СтороженкоРуководитель отдела разработки
VKTGWA
Реанимация ИТ-архитектуры: как провести глубокий рефакторинг Legacy-системы без остановки бизнеса

Содержание

  • Что такое Legacy на самом деле — и почему оно «болит»
  • Безопасная замена Legacy
  • Практический кейс Fortech: Рефакторинг платформы мониторинга автопарка
  • Второй кейс: финтех под давлением
  • Роль аутстаффинга в процессе модернизации
  • Безопасность и соответствие требованиям: что нужно учесть в 2026 году
  • Заключение: рефакторинг — это управляемый процесс
  • FAQ: Ответы на частые вопросы

Нужна оценка вашей задачи?

Обсудить проект →

Представьте: ваш продукт работает. Заказы идут, клиенты платят. Но каждая новая фича превращается в трёхнедельный квест. Один разработчик уходит — и уносит в голове четверть бизнес-логики. Баги в production фиксируются заплатками поверх заплаток. Вы понимаете, что система гниёт изнутри — но останавливать её страшно.

Это не паранойя. Это классическая стадия, когда технический долг из абстрактной метрики превращается в реальные деньги. В Fortech мы проходили через это с командами из финтеха, логистики и корпоративного сектора. И знаем: рефакторинг — это не «блажь разработчиков». Это инвестиция в выживание продукта. Статья основана на реальном опыте наших команд в проектах по мониторингу автопарка, финансовым платформам и корпоративным системам.

Что такое Legacy на самом деле — и почему оно «болит»

Legacy — это не обязательно код, написанный десять лет назад. Legacy — это любая система, которую страшно трогать.

Технически это выглядит так: отсутствие документации, спагетти-код с запутанными зависимостями, устаревшие версии фреймворков, которые давно не получают обновлений безопасности. Монолит, где правка в одном месте ломает три других.

С точки зрения бизнеса это ощущается иначе: новая фича занимает месяц вместо недели. Time-to-Market растёт, конкуренты вас обгоняют. Ключевой разработчик увольняется — и вдруг выясняется, что никто больше не понимает, как работает модуль расчёта тарифов.

Как понять, что пора? Есть несколько сигналов:

  • Количество регрессионных багов растёт с каждым релизом, хотя новых фич добавляется меньше.
  • Онбординг нового разработчика занимает больше двух недель — не потому что он слабый, а потому что никто не может объяснить, как устроена система.
  • Любая оценка задачи начинается со слов «надо сначала разобраться».
  • Деплой — это событие с тревогой, а не рутинная операция.

Один из наших клиентов — платформа управления автопарком — столкнулся именно с этим: устаревший код, неоднородная структура, и задача масштабироваться под растущий объём данных о геолокации, страховках и поведении водителей. Прежде чем внедрять новый функционал, нужно было сначала стабилизировать то, что есть.

Безопасная замена Legacy

Самая опасная идея в рефакторинге — «снести всё и написать заново». Это заманчиво. Это кажется чистым решением. Но на практике это почти всегда катастрофа.

25864665.png

Почему нельзя просто переписать:

  1. Во-первых, вы потеряете месяцы разработки без видимого результата для бизнеса. Клиенты не видят рефакторинга — они видят отсутствие новых фич.
  2. Во-вторых, вы рискуете потерять данные, бизнес-логику, которая нигде не документирована и существует только «в коде».
  3. В-третьих, пока вы пишете заново, конкуренты не стоят на месте.

Рабочий подход — поэтапная замена. В разработке это называется Strangler Fig Pattern (метод «Душителя»): по аналогии с тропическим растением, которое постепенно обвивает дерево-хозяина и в итоге заменяет его, не давая ему упасть.

Суть: вы не убиваете старую систему сразу. Вы создаёте новые модули рядом, постепенно перенаправляете на них трафик и логику, а старые части отмирают сами — когда уже не нужны.

Anti-Corruption Layer — второй ключевой инструмент. Это прослойка между старым и новым кодом, которая не даёт «заразе» распространяться. Новые модули взаимодействуют со старыми через чётко определённый интерфейс — и не знают о внутреннем хаосе за ним.

Анализ рисков перед стартом — обязательный этап. Нужно понять: какие части системы «горячие» (изменения в них ломают всё), какие можно безопасно изолировать, где есть тесты, а где их нет совсем. Без этой карты рефакторинг превращается в блуждание в тёмной комнате.

Практический кейс Fortech: Рефакторинг платформы мониторинга автопарка

Это не гипотетический пример. Именно с таким проектом работала наша аутстафф-команда.

Входные данные: многофункциональная веб-платформа, объединяющая сервисы продажи, каршеринга и администрирования транспорта. Тысячи объектов в реальном времени: геолокация, состояние узлов автомобиля, поведение водителей. Фронтенд — нестабильный, с устаревшим кодом и неоднородной структурой. Бизнес хотел масштабироваться, но архитектура не позволяла.

Проблема: провести глубокий рефакторинг так, чтобы операторы продолжали работать с системой в штатном режиме, а новый функционал появлялся параллельно с починкой старого.

25864670.png

Этап 1: Аудит и «заморозка» критических участков
Первое, что сделала команда — провела полный аудит кодовой базы. Не для того, чтобы переписать всё сразу, а чтобы составить карту: что трогать нельзя (высокий риск поломки), что можно изолировать, а что уже сейчас критически нестабильно. Параллельно зафиксировали «красные зоны» — участки, которые в процессе рефакторинга не должны изменяться до тех пор, пока новая версия не готова принять нагрузку.

Этап 2: Внедрение стейт-менеджмента
Ключевое решение — переход на централизованное управление состоянием через NgRx/NGXS. Это не просто технический выбор, это архитектурный фундамент. Без предсказуемого потока данных система с тысячами объектов ведет себя непредсказуемо. Стейт-менеджмент убирает этот класс проблем.

Этап 3: Поэтапный перенос бизнес-логики
Модуль за модулем. Сначала — таблицы с кастомными фильтрами и динамическими колонками, затем — геомониторинг и визуализация маршрутов. Потом — панель оператора с real-time статусами. На каждом этапе: старый код работает, новый разрабатывается рядом, переключение происходит тихо.

Результаты:
После завершения рефакторинга платформа получила гибкую фронтенд-архитектуру. Интерфейс стал интуитивно понятным — время обучения персонала сократилось. Операторы начали быстрее обрабатывать инциденты. Критические ошибки в маршрутизации устранены, отклик системы ускорился. Это измеримый результат: меньше инцидентов, быстрее обработка, проще масштабирование.

Второй кейс: финтех под давлением

Другой показательный пример — приложение для финансового агрегатора.
Задача: за 90 дней создать платформу, которая объединит 500+ верифицированных обменных пунктов.

Команда получила legacy-кодовую базу с 14 800 строками дублирующейся логики. Первое решение — сначала убрать лишнее.

Что было сделано: Полный рефакторинг: удалены тысячи строк дублей, внедрена строгая типизация и компонентная архитектура. Параллельно — разработка модульной UI-библиотеки из 42 компонентов на React/TypeScript.

Результаты:

  • First Contentful Paint: минус 67%.
  • Скорость внедрения новых фич: +73%.
  • Онбординг нового разработчика: сократился с 14 дней до 3.

Роль аутстаффинга в процессе модернизации

Почему внутренняя команда часто не может провести рефакторинг самостоятельно?

  1. «Замыленный глаз»: разработчики адаптировались к проблемам и обходят их стороной.
  2. Операционка: команда разрывается между рефакторингом и текущими задачами/багами.

25864671.png

Что даёт аутстафф:

  • Взгляд со стороны без эмоциональной привязанности к коду.
  • Возможность сфокусироваться именно на рефакторинге.
  • Передача экспертизы: паттерны и архитектурные решения остаются в компании.
  • Документация и новые практики (код-ревью).

Экономика вопроса: Аренда Senior-разработчика кажется дорогой, пока вы не считаете цену каждого бага в production и задержки фич. По данным SkillStaff, рынок аутстаффинга в РФ вырос до 265 млрд руб. в 2024 году. Это быстро и предсказуемо: Senior через аутстафф — 2–3 недели, через найм — 3–4 месяца.

Безопасность и соответствие требованиям: что нужно учесть в 2026 году

  1. Конфиденциальность: любая работа с кодовой базой должна вестись по NDA и в защищённых контурах.
  2. Импортозамещение: в 2026 году компании должны внимательно выбирать инфраструктуру. Open Source и российские облака (Selectel, Yandex Cloud) — необходимость. В кейсе АстраЗенека вся архитектура строилась на Yandex Cloud Functions с соблюдением стандартов GxP.
  3. Аудит-лог: критически важно сохранить трассируемость всех изменений при работе с персональными данными.

Заключение: рефакторинг — это управляемый процесс

Главный страх — «начнём трогать — всё сломается». Но рефакторинг с опытной командой — это хирургия по чёткому плану: аудит, карта рисков, поэтапные изменения.

В обоих кейсах — бизнес не останавливался ни на день. Операторы работали, транзакции шли, а система под капотом становилась другой. Если архитектура тормозит рост — это сигнал к аудиту. Понять масштаб проблемы — первый шаг.

FAQ: Ответы на частые вопросы

Сколько времени занимает рефакторинг?
От 2–4 недель за модуль до 3–9 месяцев за крупную платформу. Это постоянный процесс поддержания гигиены кода.

Можно ли делать рефакторинг частями, не останавливая выпуск фич?
Да — через Strangler Fig Pattern. Вы добавляете новые модули рядом со старыми, постепенно перенаправляя нагрузку.

Как убедить бизнес выделить бюджет?
Переведите техдолг в деньги: стоимость регрессионных багов, цена задержки фич и стоимость увольнения сотрудников из-за работы с плохим кодом. В кейсе Exsun рефакторинг ускорил выпуск фич на 73%.

Нужно ли останавливать выпуск новых фич на время рефакторинга?
Идеально — частично. Критические фичи продолжаются, остальное замораживается до стабилизации ядра.

В чём отличие вашего подхода от полной переработки системы?
Полная переработка — это риск «все или ничего» через год. Наш подход дает измеримые улучшения на каждом этапе, сохраняя непрерывность сервиса.

25864668.png

Готовы выстроить стабильную команду?

Расскажите о проекте — предложим схему работы под ваш горизонт.

Написать в Telegram →

Уже появились идеи?

Расскажите о задаче — обсудим, как мы можем помочь, и предложим решение.