Portfolio
Modernizacja platformy i migracja na Kubernetes
Fotografia / Social Media
K8s
Infrastruktura w GCP
PWA
Wieloplatformowe rozwiązanie mobilne
React
Nowoczesny stack frontend
Przegląd
Shuttout zmagał się z wieloma wyzwaniami technicznymi: starzejącym się frontendem Angular.js, żądaniami natywnych aplikacji mobilnych przy ograniczonym budżecie i infrastrukturą, która nie mogła się skalować. Prowadziłem modernizację całego stacku.
Kontekst biznesowy
Shuttout to platforma konkursów fotograficznych, która polegała na przestarzałym stosie technologicznym zbudowanym na Angular.js i hostowanym na pojedynczym serwerze VPS. Zespół produktowy chciał aplikacji mobilnych, ale budżet nie pozwalał na osobny development natywny. Infrastruktura VPS nie skalowała się podczas szczytów ruchu przy ogłaszaniu zwycięzców konkursów, co powodowało regularne awarie. Startup potrzebował modernizacji technologicznej przy zachowaniu ciągłości biznesu i ograniczonego budżetu.
Wyzwanie
Legacy frontend Angular.js, hosting na pojedynczym VPS i żądania natywnych aplikacji mobilnych. Ograniczony budżet wymagał kreatywnych rozwiązań.
- Legacy frontend Angular.js trudny w utrzymaniu
- Żądania aplikacji iOS i Android bez budżetu na natywny development
- Hosting na pojedynczym VPS niezdolny do obsługi skoków ruchu
Rozwiązanie
Zmodernizowaliśmy cały stack: React dla frontendu, PWA dla mobile i Kubernetes w GCP dla skalowalnej infrastruktury.
- Migracja frontendu z Angular.js do React
- Budowa Progressive Web App zamiast natywnych aplikacji mobilnych
- Migracja z VPS na Kubernetes w GCP
Podejście i metodologia
Priorytetyzowaliśmy modernizację na podstawie wpływu biznesowego. Najpierw zajęliśmy się stabilnością - migracja na Kubernetes ustabilizowała platformę podczas skoków ruchu. Następnie rozwiązaliśmy wyzwanie mobilne używając PWA zamiast natywnych aplikacji - otrzymaliśmy 90% możliwości przy 20% kosztów. Na końcu zmodernizowaliśmy frontend do React, co poprawiło zarówno doświadczenie developerów, jak i wydajność aplikacji. Każda faza dostarczała wartość biznesową zanim zaczęliśmy kolejną.
Szczegóły implementacji
Migracja do React i PWA
Przebudowano frontend w React z możliwościami Progressive Web App, zapewniając natywne doświadczenie na urządzeniach mobilnych bez kosztu osobnych aplikacji iOS i Android.
Infrastruktura Kubernetes
Migracja z pojedynczego VPS na Kubernetes w GCP, umożliwiając auto-skalowanie, wdrożenia bez przestojów i znaczne oszczędności kosztów poprzez efektywne wykorzystanie zasobów.
Kluczowe decyzje
- PWA zamiast natywnych aplikacji - zaspokaja potrzeby mobilne przy 20% kosztów i utrzymuje jedną bazę kodu
- GKE zamiast self-managed Kubernetes - pozwoliło skupić się na aplikacji zamiast na operacjach infrastruktury
- Stopniowa migracja frontendu - nowe funkcje w React, stare stopniowo migrowane podczas regularnej pracy
Stack technologiczny
Powiązane usługi
Poniższe usługi zostały wykorzystane w tym projekcie do osiągnięcia pomyślnych rezultatów.
Wnioski z projektu
- PWA mogą zastąpić natywne aplikacje w większości przypadków - Service Workers i Web Push dostarczają kluczowe możliwości mobilne
- Kubernetes się opłaca nawet dla małych zespołów - ustrukturyzowane wdrożenia i skalowanie zmniejszają stress operacyjny
- Priorytetyzuj według wpływu biznesowego - najpierw napraw co boli użytkowników, potem modernizuj kod wewnętrzny
Informacje o projekcie
Czas realizacji
8 miesięcy (fazowo)
Zespół
1 fullstack + 1 devops (częściowo)
Rezultaty
K8s
Infrastruktura w GCP
PWA
Wieloplatformowe rozwiązanie mobilne
React
Nowoczesny stack frontend
Masz podobne wyzwanie?
Porozmawiajmy, jak mogę pomóc Twojemu projektowi odnieść sukces dzięki sprawdzonym rozwiązaniom architektonicznym i AI.