Cateromarket: migracja z PHP do Pythona i rozwój platformy
Przebudowaliśmy porównywarkę Cateromarket, żeby ułatwić dodawanie nowych funkcji i utrzymanie serwisu. Zachowaliśmy jego dotychczasowe zasady działania, a po uruchomieniu nowej wersji ten sam zespół kontynuował rozwój produktu.
Napisz do nas
- Klient
- CateroMarket.pl
- Branża
- E-commerce
- Zakres współpracy
- Okres współpracy
- 2022–2024
- Zespół Software Logic
- 4 programistów
- 1 inżynier DevOps
Kontekst projektu
Cateromarket korzystał z porównywarki cateringów dietetycznych napisanej w PHP. Dotychczasowy kod coraz bardziej utrudniał utrzymanie i rozbudowę serwisu. Naszym zadaniem było przeniesienie aplikacji do Pythona i uporządkowanie jej struktury z myślą o dalszym rozwoju.
Współpraca trwała od 2022 do 2024 roku. Po naszej stronie pracowało czterech programistów i inżynier DevOps. Zakres objął poznanie istniejącej aplikacji, jej przebudowę i uruchomienie, a następnie pracę nad kolejnymi funkcjami.
Wyzwanie
Działająca aplikacja w PHP była punktem odniesienia dla nowej wersji. Trzeba było rozpoznać zapisane w niej reguły i zależności, a następnie zachować je podczas przepisywania kodu. Dla klienta ważna była ciągłość procesów, na których opierał się serwis.
Przebudowa miała też ułatwić późniejsze zmiany. Refaktoryzacja wymagała uporządkowania struktury aplikacji, aby wraz z nowymi funkcjami nie odtwarzać problemów utrudniających utrzymanie wcześniejszej wersji.
Zakres prac i rozwiązanie
Zaczęliśmy od analizy aplikacji w PHP: jej funkcji, procesów i zależności. Ustaliliśmy, które zasady działania trzeba zachować w nowej wersji porównywarki.
Przepisaliśmy serwis na Pythona i przeprowadziliśmy refaktoryzację. Porządkowaliśmy kod, sprawdzając zgodność przenoszonych funkcji z dotychczasową logiką. Zakres współpracy obejmował również DevOps i infrastrukturę.
Po uruchomieniu nowej wersji rozwijaliśmy kolejne funkcje. W ten sposób zespół, który przeprowadził modernizację i poznał reguły serwisu, pracował dalej nad jego rozbudową.
Efekty współpracy
Cateromarket mógł rozwijać kolejne funkcje na przebudowanej aplikacji, z zespołem znającym reguły porównywarki. Modernizacja objęła zachowanie dotychczasowych procesów i uporządkowanie kodu potrzebne do dalszych zmian. W rekomendacji klient wskazuje na terminową realizację, wydajniejsze działanie i przygotowanie platformy na większe obciążenie.
Projekt zakończył się w ustalonym terminie, a platforma działa wydajniej i jest przygotowana na większe obciążenie. Przez cały czas wiedzieliśmy, co dzieje się w projekcie. Ceniliśmy jasną komunikację, elastyczność i zaangażowanie zespołu Software Logic.