Ten kod, który kręci się w tornadzie obok krowy? To Twój

A my jesteśmy ekipą ratunkową
Trzymaj się

poprzedni dostawca zniknął. Kod został

Masz platformę na produkcji i nikogo, kto jeszcze wie, jak ona działa
Masz dostawcę, który przestał odbierać telefon – albo takiego, któremu już nie ufasz
Masz repozytorium, termin i rosnące podejrzenie, że jedno z drugim się nie dogada

Przeszliśmy najciemniejsze zakamarki cudzego kodu. Ty nie musisz.

Ratowanie projektu to nie development, tylko archeologia z terminem wydania. Dostawaliśmy w spadku kod bez testów, bez README i z jednym commitem opisanym słowem „fix”. Nic nas już nie zdziwi. Ale nie martw się. Po to jesteśmy.

Przejęcie projektu, które zaczyna się od czytania kodu, a nie od przepisywania go

Sprawdzamy, co jest, mówimy, ile to jest warte, a potem razem ustalamy, co dalej.

Zanim zaczniemy czytać, warto wiedzieć, co zwykle idzie nie tak – dlatego opisaliśmy pięć sposobów, w jakie rozpada się migracja platformy.

Większość projektów modernizacji starszych systemów wycenia się od razu jako przepisanie od zera, bo łatwiej je oszacować i więcej na nim zarobić. I właśnie tak firmy tracą rok, a na koniec dostają coś, co potrafi mniej niż to, co już miały. Przejęcie projektu powinno zacząć się od audytu: co działa, co jest groźne, czego nikt nie opisał i ile co miesiąc kosztuje utrzymanie tego przy życiu.

Dopiero wtedy ma sens rozmowa o tym, co z kodem zrobić. Czasem odpowiedź brzmi: ustabilizować i rozwijać. Czasem: wymienić dwa serwisy, resztę zostawić. Zdarza się, że naprawdę trzeba budować od nowa – wtedy powiemy to wprost, choć to odpowiedź dla nas najmniej wygodna. Zmiana dostawcy powinna kosztować Cię kilka tygodni pracy na zakładkę, a nie rok w plecy.

Krowa spokojnie stojąca na brzegu – refaktoryzacja kodu bez paniki

Refaktoryzacja kodu i przejęcie projektu: co naprawdę obejmują

Koło ratunkowe – refaktoryzacja kodu i ratowanie projektów

Kod to ta łatwiejsza połowa.

Przejęcie od dostawcy to nie plik zip i „powodzenia”. To kod, dostępy, infrastruktura, domeny, licencje, dane i wiedza, której nikt nigdy nie spisał. Bierzemy to wszystko – a tę ostatnią część wreszcie spisujemy.

Audyt kodu – ustalenia z plikiem, linią i poziomem ważności

Architektura odtworzona z kodu źródłowego, żeby było jasne, co właściwie masz

Przegląd zależności i łańcucha dostaw

Repozytoria, domeny i konta chmurowe przepisane na Ciebie

Nowe hasła i klucze w miejsce wszystkich, które znał poprzedni zespół

Przejęcie infrastruktury na AWS, GCP lub Azure

Triaż krytycznych błędów, żeby nie było gorzej, zanim skończymy planować

Poprawki bezpieczeństwa i wydajności w kolejności, którą zatwierdzasz

Dokumentacja pisana na podstawie kodu, nie z pamięci

Testy tam, gdzie ich nie było

CI/CD od nowa – żeby wydanie przestało być wydarzeniem

Monitoring, logi i alerty, z których da się coś wyczytać

Zostawić, zrefaktoryzować czy przepisać – decyzja z wyceną dla każdego komponentu

Roadmapa, z którą można stanąć przed zarządem

I to, czego nikt nie spisał – czyli zwykle to, co najważniejsze

Audyt kodu – ustalenia z plikiem, linią i poziomem ważności

Architektura odtworzona z kodu źródłowego, żeby było jasne, co właściwie masz

Przegląd zależności i łańcucha dostaw

Repozytoria, domeny i konta chmurowe przepisane na Ciebie

Nowe hasła i klucze w miejsce wszystkich, które znał poprzedni zespół

Przejęcie infrastruktury na AWS, GCP lub Azure

Triaż krytycznych błędów, żeby nie było gorzej, zanim skończymy planować

Poprawki bezpieczeństwa i wydajności w kolejności, którą zatwierdzasz

Dokumentacja pisana na podstawie kodu, nie z pamięci

Testy tam, gdzie ich nie było

CI/CD od nowa – żeby wydanie przestało być wydarzeniem

Monitoring, logi i alerty, z których da się coś wyczytać

Zostawić, zrefaktoryzować czy przepisać – decyzja z wyceną dla każdego komponentu

Roadmapa, z którą można stanąć przed zarządem

I to, czego nikt nie spisał – czyli zwykle to, co najważniejsze

Wciąż czytasz? Świetnie. Dalej jest jeszcze lepiej.

Zaczynamy bez poprzedniego dostawcy

Większość przejęć zaczyna się od dostawcy, który przestał oddzwaniać. Nie czekamy na niego. Wdrożenie produkcyjne, fragment repozytorium, stary backup – odtwarzamy system z tego, do czego wciąż masz dostęp, zmieniamy każdy sekret, który znał poprzedni zespół, i przepisujemy konta na Ciebie. Pomoc dawnego dostawcy to miły dodatek. Nie warunek.

Nie szukamy winnych

Poprzedni zespół często wciąż pracuje w firmie albo jest z nią w dobrych relacjach – a czasem po prostu zrobił, co mógł, za budżet, który od początku był nietrafiony. Piszemy o kodzie, nie o ludziach. Te relacje jeszcze Ci się przydadzą. Nie poświęcimy ich po to, żeby nasza oferta lepiej wypadła.

Bez zamrażania rozwoju

Nie zatrzymasz sprzedaży na trzy miesiące, bo ktoś czyta Twoje repozytorium. Przejęcie idzie równolegle z roadmapą: najpierw stabilizacja, szybko pierwsze drobne zmiany, a ryzykowne refaktoryzacje dopiero wtedy, gdy są testy, które wyłapią ewentualne szkody.

Modernizacja starego systemu: przepisać czy zrefaktoryzować

Przepisanie od zera najłatwiej wycenić i najtrudniej skończyć. Przy okazji wymazuje lata reguł biznesowych, których nikt nie spisał – także tych brzydkich, które powstały, bo kiedyś poskarżył się prawdziwy klient. Wymieniamy komponent, gdy jego utrzymanie kosztuje więcej niż zbudowanie nowego, i pokazujemy Ci ten rachunek, zanim podejmiesz decyzję.

Rozstanie z nami też będzie porządnym przekazaniem

Wszystko, czego dotkniemy, zostawiamy z dokumentacją, testami i dostępami na Twoje nazwisko. Jeśli za trzy lata przejdziesz do innego dostawcy, dostanie repozytorium, które da się przeczytać, a nie projekt do ratowania. Vendor lock-in to model biznesowy. Nie nasz.

Odzyskaj kontrolę nad kodem

System przypadł Ci w spadku, a odpowiedzialność razem z nim? Dobrze trafiasz.

CTO, którzy przyszli, gdy platforma już stała. Founderzy, których agencja zamilkła. Firmy zmieniające dostawcę w połowie budowy produktu. Zespoły, z których odszedł jedyny programista rozumiejący system. Inwestorzy, którzy chcą wiedzieć, co kupują, zanim kupią. Każdy, kto ma repozytorium i boi się je wdrożyć.

Nie wiesz, do której grupy należysz? Przekaż nam repozytorium. Powiemy Ci, co masz.

Refaktoryzacja kodu i przejęcie projektu – zapytaj o wszystko

Kod sam się nie naprawi, kiedy Ty się zastanawiasz