// usługi

Aplikacje legacy w PHP i Vue — ustabilizowane i znów w rozwoju.

Poprzedni developer odszedł, błędów przybywa, zależności są nieaktualne od lat, a każde wdrożenie to stres. Produkt nadal zarabia — tylko każda zmiana stała się droga i ryzykowna.

Biorę odpowiedzialność za kod: znajduję to, co kruche, naprawiam to, co pilne, dokumentuję działanie systemu i sprawiam, że wdrożenia znów są rutyną — bez zatrzymywania biznesu i bez przepisywania wszystkiego od zera.

Ta usługa jest dla Ciebie, jeśli…

situations.md
  • osoba, która zbudowała system, odeszła i nikt w pełni nie rozumie, jak on działa;
  • projekt działa na starym PHP lub Vue 2, a aktualizacje ciągle są odkładane;
  • wdrożenia są ręczne, rzadkie i zwykle kończą się serią poprawek;
  • drobne zmiany zajmują tygodnie, bo każda edycja psuje coś w innym miejscu;
  • nie ma dokumentacji, testów ani jasnego obrazu ryzyk;
  • potrzebujesz długoterminowego opiekuna technicznego, a nie jednorazowej poprawki.

Zakres prac

  1. scope/01

    Audyt kodu i zależności

    Pisemna mapa systemu: moduły, integracje, nieaktualne pakiety, ryzyka bezpieczeństwa i miejsca, które psują się najczęściej.

  2. scope/02

    Najpierw krytyczne poprawki

    Błędy, które kosztują Cię pieniądze lub użytkowników, naprawiam w pierwszej kolejności — z jasnym wyjaśnieniem przyczyny.

  3. scope/03

    Aktualizacje zależności i środowiska

    Zaplanowane aktualizacje PHP, frameworków i pakietów frontendowych, w tym migracja do PHP 8 i z Vue 2 na Vue 3, tam gdzie ma to sens.

  4. scope/04

    Bezpieczne wdrożenia

    Środowiska oparte na Dockerze i pipeline CI/CD, dzięki czemu wdrożenia są powtarzalne i można je wycofać.

  5. scope/05

    Dokumentacja

    Opis konfiguracji, architektury i wdrożeń, z którego następny developer — albo Twój zespół — naprawdę skorzysta.

  6. scope/06

    Stałe utrzymanie

    Miesięczny abonament: monitoring, aktualizacje, drobne funkcje i osoba, która zna system.

Od nieznanego kodu do przewidywalnego rozwoju

Ten skan pokazuje, co zmienia typowa stabilizacja. Czerwone linie to stan, w jakim projekty zwykle trafiają do mnie; zielone — to, do czego prowadzi praca.

legacy.php · health

nieznany kod

udokumentowany system

krytyczne zależności

przewidywalny rozwój

niestabilne wdrożenia

stabilna produkcja

scan: stable

Jak przebiega praca

● passed · services/legacy-php-vue-maintenance · main5 etapy · 0 niespodzianek
  1. ~1 tydz.
    audit:codebase

    Audyt

    Dostępy, przegląd kodu i infrastruktury oraz lista ryzyk uszeregowana według wpływu na biznes.

    → pisemne wnioski
  2. ~1 tydz.
    plan:stabilization

    Plan

    Co naprawić od razu, co zaktualizować później, a czego nie ruszać. Wycenę dostajesz przed rozpoczęciem prac.

    → roadmapa z priorytetami
  3. tygodnie
    fix:stabilize

    Stabilizacja

    Krytyczne błędy, aktualizacje zależności i pipeline wdrożeń — małymi krokami, które łatwo zweryfikować.

    → stabilny kod
  4. każde wydanie
    deploy:release

    Wdrożenie

    Zmiany trafiają na produkcję przez CI/CD z możliwością wycofania, a nie przez kopiowanie plików na serwer.

    → powtarzalne wdrożenia
  5. na bieżąco
    support:ongoing

    Wsparcie

    Monitoring, aktualizacje i nowe funkcje od osoby, która zna już system od środka.

    → utrzymany produkt

Czego możesz się spodziewać

  • System, który rozumiesz — z udokumentowaną architekturą, konfiguracją i wdrożeniami.
  • Mniej niespodzianek na produkcji, bo najbardziej kruche miejsca są naprawione lub odizolowane.
  • Wdrożenia, które są rutyną, a nie ryzykiem.
  • Realna ścieżka aktualizacji PHP, frameworków i Vue zamiast wymuszonego przepisywania.
  • Jedna osoba odpowiedzialna technicznie za produkt.

Technologie

Dokładny stack zależy od projektu. To technologie, z którymi najczęściej pracuję przy utrzymaniu.

export const stack = [
'PHP',
'Laravel',
'Yii2',
'Vue 3',
'Nuxt',
'MariaDB',
'MySQL',
'Docker',
'CI/CD'
]

Gdzie robiłem to wcześniej

Od 2020 roku odpowiadam technicznie za produkcyjną platformę fintech i regularnie pracuję w kodzie, którego nie zaczynałem.

  • 6 lat z jednym klientem produktowym — ciągła odpowiedzialność od kwietnia 2020.
  • 99,9% uptime na produkcji dzięki rozwiązywaniu incydentów, eliminowaniu powtarzających się awarii i wzmacnianiu krytycznych usług.
  • Ręczne wydania zastąpione przez CI/CD: linting, testy i wdrożenia bez przestojów.
  • W Right Information: endpointy API i funkcje SSR w monorepo Yii2 / Nuxt 3 z zachowaniem zgodności z platformą legacy.

Pytania, które klienci zadają najpierw

Czy pracujesz z kodem, który napisał ktoś inny?

Tak — tak zaczyna się większość projektów utrzymaniowych. Pierwszym krokiem zawsze jest audyt: czytam kod, infrastrukturę i proces wdrożeń, zanim cokolwiek zmienię, więc decyzje opierają się na tym, co faktycznie istnieje.

Czy musimy przepisać aplikację?

Zwykle nie. Przepisywanie działającego produktu jest drogie i ryzykowne. Wolę ustabilizować system, aktualizować go krok po kroku i wymieniać tylko te części, które naprawdę blokują rozwój. Jeśli przepisanie okaże się lepszą opcją, audyt to pokaże — z uzasadnieniem.

Czy możesz przeprowadzić migrację z Vue 2 na Vue 3 albo na nowszą wersję PHP?

Tak. Aktualizacje planuję jako serię małych, testowalnych kroków, dzięki czemu produkt działa przez cały czas migracji, zamiast stać w miejscu przez miesiące.

Jak rozliczane jest utrzymanie?

Stałe wsparcie działa w modelu miesięcznego abonamentu, od 30 USD/h. Audyt i etap stabilizacji wyceniam osobno, gdy po audycie zakres jest już jasny.

Czego potrzebujesz od nas na start?

Dostępu do repozytorium i hostingu oraz osoby, która zna procesy biznesowe. Jeśli część dostępów została utracona, ich odzyskanie staje się częścią audytu.

Czy możesz zostać przy projekcie na dłużej?

Tak. Długoterminowa praca nad produktem to coś, co lubię najbardziej — obecna współpraca trwa już ponad sześć lat.

git push --message

Opowiedz mi o systemie, którego nikt nie chce ruszać.

Wyślij krótki opis: stack, hosting, co się psuje i co niepokoi Cię najbardziej. Odpowiem w ciągu jednego dnia roboczego z pytaniami albo pierwszym krokiem.