Що потрібно, щоб почати
Доступ до репозиторію та до бази, бажано ще до продакшен-серверів. Якщо репозиторію немає і код лежить лише на сервері, теж не проблема: заберемо його звідти й покладемо в git першим кроком. Документація не обов'язкова, її зазвичай і немає.
Перший тиждень іде на аудит: що працює, що зламано, що ніде не описано, де саме проєкт ламається під час деплою. Результат аудиту це документ із трьома варіантами дій і чесною ціною кожного. Він ваш, навіть якщо далі ви підете до іншої команди.
Стабілізація перед розвитком
Ми не починаємо з нових функцій. Спочатку проєкт має піднятися локально з одного файлу інструкції, деплоїтися однією командою і не будити нікого вночі. Це означає: репозиторій, тести на критичні сценарії, бекапи, моніторинг помилок, оновлення залежностей до підтримуваних версій.
Тільки після цього є сенс щось додавати. Нова функція поверх нестабільної системи дорожча вдвічі: половина часу йде на те, щоб зрозуміти, чому вона ламає старе.
Чому не переписати все
Бо це найдорожчий і найризикованіший шлях, і зазвичай непотрібний. Чужий код виглядає страшно перший тиждень, потім стає просто кодом. Переписування з нуля означає, що кілька місяців бізнес не отримує нічого нового, а наприкінці отримує систему з новими помилками замість старих, які вже всі знали.
Переписуємо окремі модулі, коли аудит показує, що дешевше зробити заново, ніж лагодити. Так, це буває. Але рішення приймається по кожному модулю окремо, з цифрами, а не «тут усе погано, треба з нуля».
Як передаємо назад
Із самого початку працюємо в вашому репозиторії, за вашими правилами доступу. Документуємо все, що змінили. Коли ви вирішите найняти свого розробника, він отримає проєкт, у якому можна розібратися за тиждень, бо саме за цим критерієм ми його й приводили до ладу. Жодного обов'язкового контракту на підтримку.
Типові ситуації
Розробник-фрілансер зник разом із доступами. Агенція здала проєкт і зникла після гарантійного терміну. Внутрішня команда розпалась, лишився один джуніор. Продукт куплений разом із бізнесом, і ніхто не знає, як він влаштований. У кожному випадку початок однаковий: аудит, стабілізація, потім розмова про розвиток.