Jeśli Twój zespół ma na produkcji przynajmniej jedną aplikację wykorzystującą React.js, to gratuluję – to już połowa sukcesu 🙂
W wielu przypadkach jest to tak na prawdę dopiero początek wyzwań, przed którymi znajduje się Twój zespół. Za chwilę będzie trzeba zadbać o wydajność, skalowalność i łatwość w utrzymaniu. Za moment prawdopodobnie przyjdzie ktoś z biznesu z prośbą o wdrożenie nowej funkcjonalności i spotka się ze zdziwieniem i rozczarowaniem, dlaczego dodawanie nowych ficzerów zajmuje tak dużo czasu. Przecież to tylko jakiś „niebieski przycisk”.
No właśnie, w pewnym momencie skończył się green field i development nagle spowolnił.
Dobrze, że chociaż mamy testy i możemy bezpiecznie rozwijać dalej projekt. Bo mamy, prawda? Przecież ich nie porzuciliśmy… A może zaczęły działać strasznie wolno i zamiast poświęcać czas na rozwijanie projektu, to musimy odblokować pipeline?
Co z reużywalnością komponentów – niby mamy jakoś to wydzielone, ale czy na pewno w sposób sensowny i optymalny? Może warto przejść na monorepo?
W aplikacjach webowych pojawia się w pewnym momencie sporo wyzwań i decyzji, które trzeba podjąć. Spowodowane są m. in. problemami z:
- utrzymywaniem kodu
- komunikacją komponentów pomiędzy aplikacjami
- testowaniem aplikacji i długo trwającymi testami
- optymalnymi procesami CI/CD
- wydajnością
- reużywalnością komponentów
- określeniem granic komponentów
- skalowalną architekturą aplikacji
- podziałem domenowym
- zarządzaniem długiem technologicznym
- brakiem pewności, czy dalsze wykorzystywanie niektórych bibliotek w projekcie dalej ma sens
- komunikacją na poziomie dev team – PO/PM – design
- problemy z wdrażaniem inicjatyw i dogadywania ich z biznesem
- oraz wiele, wiele innych 🙂
To tylko garstka z nich – nie sztuką jest wypuszczenie aplikacji – sztuką jest jest dalsze rozwijanie zapewniając jednocześnie stabilność projektu.
W ramach konsultacji określamy z zespołem palące problemy, szukamy odpowiednich narzędzi i rozwiązań, określamy priorytety i tworzymy action pointy. Działamy iteracyjnie, spotykamy się co jakiś czas, aby śledzić postęp wdrożonych rozwiązań.
Jeśli chcesz w swojej firmie rozwiązać przynajmniej jeden z problemów
Współpracowałem między innymi z: