Приём проекта после предыдущего подрядчика
Подхватываем системы, оставшиеся без команды: восстанавливаем доступы, собираем и разворачиваем проект, разбираемся в коде, документируем устройство и берём на сопровождение. Работаем в том числе тогда, когда документации нет, часть доступов утеряна, а прежний подрядчик на связь не выходит.
Коротко о задаче
Ситуация повторяется от компании к компании и почти всегда застаёт врасплох.
Система работает. Подрядчик, который её писал, перестаёт отвечать: закрылся, потерял интерес к небольшому клиенту, поссорился с заказчиком, потерял единственного разработчика, знавшего проект. Иногда расставание проходит мирно, но передача сводится к архиву с кодом и словам «там всё понятно».
Дальше выясняется масштаб. Пароли от серверов и репозитория есть у бывшего сотрудника. Домен зарегистрирован на подрядчика. Проект не собирается, потому что нужны библиотеки из закрытого хранилища. Часть настроек живёт только на боевом сервере и нигде не записана. Документации нет вообще либо она описывает первую версию трёхлетней давности.
При этом система продолжает работать и приносить деньги, но любое изменение в ней невозможно. Компания оказывается в заложниках у собственного продукта.
Мы такие проекты принимаем. Это не самая приятная работа, но она делается.
Что входит в услугу
- Инвентаризация активов
Составляем перечень: где код, где серверы, где база, где домен и на кого он оформлен, где сертификаты, какие внешние сервисы подключены и на чьи аккаунты. По каждой позиции определяем, есть доступ или его нужно восстанавливать.
- Восстановление доступов
Помогаем вернуть контроль над доменом, хостингом, репозиторием, аккаунтами внешних сервисов. Часть вопросов решается через регистраторов и провайдеров, часть требует переписки с бывшим подрядчиком, часть — обхода: развернуть заново то, к чему доступ утрачен окончательно.
- Восстановление сборки
Добиваемся, чтобы проект собирался и разворачивался из исходников на чистой машине. До этого момента изменения в систему вносить нельзя, и это первый рубеж.
- Сверка с боевой версией
Проверяем, соответствует ли код тому, что запущено. Расхождения встречаются часто: правки вносили прямо на сервере. Все такие места нужно найти и вернуть в исходники.
- Разбор устройства системы
Восстанавливаем архитектуру, потоки данных, точки интеграции, фоновые задачи, логику ключевых процессов. Смотрите {{ссылка: Аудит унаследованного кода и оценка технического долга}}.
- Документирование
Фиксируем то, что восстановили: схема, порядок развёртывания, описание конфигурации, инструкции по типовым операциям. Смотрите {{ссылка: Восстановление технической документации}}.
- Стабилизация
Закрываем срочное: настраиваем резервное копирование, если его не было, устраняем очевидные уязвимости, чиним то, что мешает работе прямо сейчас.
- Переход к сопровождению
После стабилизации переходим в обычный режим поддержки и развития: {{ссылка: Техническая поддержка и развитие собственного продукта заказчика}}.
Что это даёт заказчику
- Возврат контроля над продуктом. Доступы, код и инфраструктура собираются в ваших руках.
- Возможность что-то менять. Работающая сборка означает, что доработки снова возможны.
- Снятая зависимость. Система перестаёт быть заложницей одного подрядчика или одного человека.
- Понимание реального состояния. Разбор показывает, что там на самом деле, включая неприятное.
- Документация, которой не было. Следующая передача пройдёт нормально.
- Без переписывания с нуля. Приём почти всегда дешевле новой разработки, даже когда код оставляет желать лучшего.
Как мы работаем
Начинаем с инвентаризации, потому что без неё непонятен объём. Она занимает несколько дней и уже даёт результат: становится видно, что критично, а что терпит.
Работаем без осуждения предшественников. Комментарии в духе «кто это писал» ничего не дают заказчику: решения, которые выглядят странно, обычно объясняются сроками, бюджетом или требованиями, о которых мы не знаем. Наша задача — сделать систему управляемой, а не оценить чужую работу.
Если по итогам разбора окажется, что систему выгоднее заменить, скажем прямо и покажем расчёт. Но за приём беремся и в тех случаях, когда код далёк от идеала: работающая система с плохим кодом лучше, чем год без системы.
Наш опыт
Мы принимали и приводили в порядок продукты, написанные другими командами. Крупный туристический портал перевели с давно неподдерживаемой версии платформы на актуальную, начав с разбора чужого кода. Мобильное приложение на прекращённом фреймворке вернули в собираемое состояние.
Мы сопровождаем более десяти проектов по IT-инфраструктуре и держим системы в эксплуатации годами: платформа фармаконадзора находится на непрерывном сопровождении с 2023 года. Долгая поддержка кода, своего и чужого, — наш основной формат работы, а не исключение.
Расскажите, что за система и в каком она положении. Начнём с инвентаризации: она за несколько дней покажет реальную картину.
Давайте создавать вместе!
Свяжитесь с нами и мы проконсультируем по вопросам реализации IT-решений и найдем лучший подход к разработке
Контакты
Офис: г. Казань, ул. Островского, 57Б, оф. 110
Почта: info@nabla-lab.ru
Телефон: +7 (965) 595-62-78