Mr. Shuttle, touroperator branży turystycznej, specjalizuje się w profesjonalnych usługach transportowych dla turystów oraz podróżujących służbowo, oferując między innymi transfery lotniskowe, transfery międzymiastowe, a także wycieczki jednodniowe.
Biblioteka JavaScript stworzona przez Facebooka, służąca do budowania interfejsów użytkownika, zwłaszcza dla aplikacji jednostronicowych (SPA).
Rozszerzenie języka JavaScript, dodające statyczne typowanie. Ułatwia pisanie i utrzymanie kodu, a także zwiększa jego czytelność.
Biblioteka do zarządzania stanem aplikacji, zaprojektowana z myślą o aplikacjach korzystających z REST API.
Framework do tworzenia aplikacji w języku Java. Zapewnia szereg gotowych rozwiązań, ułatwiających tworzenie aplikacji webowych.
Open-source'owa relacyjna baza danych. Jest jedną z najpopularniejszych baz danych na świecie. Zapewnia wysoką wydajność, skalowalność i niezawodność.
Standard Java, służący do mapowania obiektowo-relacyjnego. Umożliwia tworzenie obiektów, które są automatycznie mapowane na rekordy w bazie danych.
Firma obsługująca wycieczki turystyczne, zatrudniająca kilkudziesięciu pracowników i obsługująca tysiące klientów rocznie, zdecydowała się stworzyć nowy system do obsługi swoich procesów biznesowych. Zakres potrzeb rozciągał się od zarządzania rezerwacjami przychodzącymi z zewnętrznych systemów, poprzez dystrybucję zadań potrzebnych do realizacji usługi, po finalne rozliczenia z pracownikami i podwykonawcami. Pracownicy do tej pory wykonywali część pracy ręcznie, co było nie tylko czasochłonne, ale i podatne na błędy.
Dotychczasowy system pracy zespołu był połączeniem użycia kilku zewnętrznych programów oraz starego dedykowanego rozwiązania opartego na przestarzałych technologiach, które obarczone było dużym długiem technicznym, uniemożliwiającym efektywne dodawanie nowych funkcjonalności. Dotychczasowe wyzwania obejmowały:
Istniejący system był oparty na technologiach, które nie były aktualizowane od lat. Ta przestarzała infrastruktura wprowadzała znaczne ograniczenia funkcjonalne oraz problemy z wydajnością oraz bezpieczeństwem danych.
System obciążony był dużym długiem technicznym, skutkującym częstymi awariami i trudnościami w implementacji nowych funkcjonalności, co znacząco hamowało rozwój firmy. Skutkiem była powolna migracja do tymczasowych rozwiązań typu Excel.
Stary system nie był przystosowany do efektywnej obsługi rosnącej liczby użytkowników, co stanowiło barierę dla dynamicznie rozwijającej się działalności klienta.
Dostęp do systemu był możliwy tylko z określonych rodzajów urządzeń, co stanowiło poważne ograniczenie, zwłaszcza dla pracowników potrzebujących dostępu do systemu w podróży lub w domu.
System nie posiadał możliwości łatwej integracji z innymi systemami i aplikacjami, co było kluczowe ze względu na potrzebę współpracy z zewnętrznymi partnerami oraz integracji z nowoczesnymi narzędziami wspierającymi turystykę.
Klient podjął decyzję o stworzeniu nowego dedykowanego systemu, wykorzystującego możliwości aktualnych technologii. W wymaganiach znalazły się między innymi: możliwość pracy online z dowolnego miejsca na świecie, skalowalność pod względem liczby użytkowników oraz możliwość łatwego rozwoju w przyszłości. Aplikacja powinna również umożliwiać integrację z aplikacjami firm trzecich poprzez interfejs API.
Jednym z najważniejszych wyzwań było przeprowadzenie bezpiecznej migracji danych ze starego systemu do nowego oraz zapewnienie okresu przejściowego, w którym obie aplikacje będą funkcjonować równolegle, synchronizując dane między sobą.
Dodatkowym elementem projektu był iteracyjny rozwój obszaru UX/UI aplikacji, bazując na materiałach dostarczonych przez klienta w formie dokumentacji oraz wstępnych makiet. Iteracyjne podejście pozwoliło na stopniowe adaptowanie systemu tak, aby odpowiadał nowo identyfikowanym potrzebom użytkowników i możliwościom techinicznym.
Rozwiązanie zostało oparte o architekturę klient-serwer. Aplikacja kliencka została napisana w technologii React, a serwerowa w Kotlinie z wykorzystaniem Spring Boot. Aplikacja backendowa została zintegrowana z bazą danych PostgreSQL. Rozwiązanie zostało oparte o architekturę heksagonalną, co pozwoliło na konsekwentne oddzielenie warstwy biznesowej od szczegółów implementacyjnych.
Do komunikacji między klientem a serwerem wykorzystano REST API. Wyraźny podział na część backend i frontend umożliwia pracę zespołom niezależnie od siebie oraz pozostawia możliwość wymiany jednej z części systemu bez konieczności ingerencji w drugą lub dodanie kolejnego komponentu w przyszłości np. aplikacji mobilnej.
Aplikacja została zaprojektowana z myślą o łatwym rozwoju w przyszłości, dzięki zastosowaniu modularnej architektury obiektowej (object-oriented programming), wstrzykiwania zależności (dependency injection) oraz testów jednostkowych.
Dzięki przemyślanej budowie bazy danych, cyklicznym migratorom oraz współpracy z zespołem deweloperskim utrzymującym stare rozwiązanie firmy możliwe było przeprowadzenie bezpiecznego przejścia ze starego systemu na nowy, bez konieczności wstrzymywania żadnych procesów biznesowych klienta.
Aplikacja została wdrożona na platformie AWS, co zapewniło skalowalność i niezawodność. Dane klientów zostały zabezpieczone z wykorzystaniem protokołu HTTPS. Dzięki wdrożeniu systemu CI/CD udało się zautomatyzować proces wdrażania nowych wersji systemu, co znacząco przyspieszyło iteracje rozwojowe. Wdrożenie na AWS w połączeniu z zaletami aplikacji webowych umożliwiło łatwy dostęp do systemu z dowolnego miejsca na świecie.
W aplikacji zostały zaimplementowane integracje m. in. z:
Różne kategorie użytkowników (pracownicy, dyspozytorzy, klienci, sprzedawcy) mają dostosowany dostęp do funkcjonalności aplikacji, co pozwala na efektywne zarządzanie dostępem do danych. Poszczególne grupy użytkowników mają dostęp do dedykowanych funkcjonalności, takich jak widok mobilny dla kierowców, czy widok dla dyspozytorów.
W Blues Brackets zajmujemy się rozwiązywaniem prawdziwych problemów za pomocą najnowszych technologii.
Usługi Rozwoju Aplikacji React
Usługi rozwoju systemów wbudowanych
Tworzenie aplikacji mobilnych na Androida i iOS
Profesjonalny rozwój projektów Arduino
Rozwiązania embedded z RTOS
Usługi rozwoju MVP | Firma tworząca MVP dla startupów
Usługi tworzenia oprogramowania metodą Agile
Usługi Rozwoju Aplikacji Flutter
Usługi Proof of Concept i Proof of Principle
Rozwój aplikacji cross-platform (wieloplatformowych)
Software House Polska | Tworzenie Aplikacji i Systemów Wbudowanych
Staff Augmentation | Rozszerzenie zespołu IT
Tworzenie aplikacji PWA | iOS i Android
Animowane Strony Internetowe | Profesjonalne Usługi
Profesjonalne usługi UX/UI design
Tworzenie oprogramowania zgodnego z EAA
Business Intelligence dla firm | bluesBrackets
Zatrudnij dedykowany zespół IT w Polsce
Ekspercka firma projektowa sprzętu | Własna elektronika
Usługi inżynierii danych i wizualizacji
Utrzymanie oprogramowania i modernizacja | bluesBrackets
Zdalne wsparcie IT i utrzymanie aplikacji
Usługi rozwoju IoT | Internet rzeczy IoT
Usługi Tworzenia Chatbotów AI
Usługi Next.js i WordPress
Usługi tworzenia aplikacji webowych od bluesBrackets
Firma konsultingowa DevOps | bluesBrackets
DevOps jako Usługa | Doradztwo AWS Cloud
Rozwój oprogramowania SaaS: chmura zgodna z RODO
NB-IoT, systemy wbudowane i zwinne IT
Mikroserwisy czy Monolit: Ekspercka Architektura
Oprogramowanie IoT i Smart City | bluesBrackets
Rozwój produktów IoT i dedykowane oprogramowanie
Oprogramowanie SLA & usługi zarządzane Polska
IIoT i Przemysł 4.0 – oprogramowanie na miarę
Outsourcing Python – Polska firma offshore
Rozwiązania IT dla magazynowania energii i IoT
Platforma zarządzania IoT i dedykowane rozwiązania
Usługi backend i JavaScript | bluesBrackets
Rozwój oprogramowania SaaS: chmura zgodna z RODO
Tworzenie oprogramowania dla branży turystycznej
Rozwój IoT i Wearable | bluesBrackets
Expert Software Migration Services | bluesBrackets
Ekspercka migracja oprogramowania | bluesBrackets
Migracje Data Center i IT – Bezpieczne Usługi
Profesjonalne prototypowanie oprogramowania
Języki i usługi tworzenia aplikacji mobilnych
Eksperci IoT i Embedded | bluesBrackets
Usługi testowania jakości | bluesBrackets
Testy i integracja systemów IT end-to-end
Polski Software House: Agile & UI/UX
Tworzenie oprogramowania medycznego
Outsourcing IT i AI dla branży medycznej
Uczenie maszynowe w analizie predykcyjnej
Rozwiązania ML dla łańcucha dostaw
IT Nearshoring i rozwój oprogramowania Polska
Rozliczenie ryczałtowe czy T&M – co wybrać?
Modernizacja aplikacji legacy dla firm
Modernizacja systemów IT i dedykowane oprogramowanie
Nowoczesny software house: Dyrektor IT jako usługa (CTO as a Service), DevOps, UX/UI
Skalowanie aplikacji dla startupów — rozwiązania skalowalne
Usługi inżynierii oprogramowania embedded | bluesBrackets
Tworzenie aplikacji webowych ReactJS
Skalowalne aplikacje desktopowe i embedded – bluesBrackets
Node.js, React i Next.js Polska – bluesBrackets
Tworzenie aplikacji Flutter | bluesBrackets
Liderzy Java w Polsce – zatrudnij ekspertów
Konsultacje Machine Learning i Rozwój Oprogramowania | UI/UX, Fullstack, Mobile, Embedded
Usługi tworzenia oprogramowania na zamówienie — bluesBrackets
Oprogramowanie Embedded i IoT | bluesBrackets
Firmy programistyczne | Rozwiązania na miarę
Eksperckie usługi hardware | bluesBrackets
Rozwiązania AI Chatbot dla Firm
Tworzenie PWA na iOS – Aplikacje mobilne
Ekspercka firma tworząca aplikacje iOS w Polsce
Eksperci w Embedded Android i Bluetooth
Outsourcing inżynierii oprogramowania Polska
Specjalistyczne usługi inżynierii oprogramowania
Tworzenie dedykowanych aplikacji webowych | bluesBrackets
Tworzenie progresywnych aplikacji webowych | bluesBrackets Polska
Aplikacje webowe vs desktopowe | bluesBrackets
Aplikacje webowe czy mobilne? Fullstack & UX/UI
Agile Software Development Polska
Firma outsourcingowa IT — Polska
Polska firma outsourcingu IT
Zaufana firma offshore software development w Polsce
Tworzenie oprogramowania IoT dla przemysłu
Polski Software House | Rozwiązania IoT i Embedded
Oprogramowanie IoT dla handlu, wearables, nieruchomości
Usługi rozwoju oprogramowania | bluesBrackets
Tworzenie produktów IoT | Embedded & Fullstack Software House
Aplikacje mobilne dla biznesu | bluesBrackets
IoT MQTT Dashboardy i rozwiązania embedded
Dedykowane MVP i oprogramowanie szyte na miarę
Dedykowane oprogramowanie na zamówienie
Firma Node.js – zaufane usługi i rozwój
Eksperci embedded i bare metal | bluesBrackets
Aplikacje webowe & AI szyte na miarę
Dedykowane CMS i oprogramowanie na miarę
Dedykowane usługi IT i outsourcing w Polsce
Eksperci white label dla aplikacji i IoT
Konsulting migracji do chmury – bluesBrackets
Integracje systemów i wdrożenia ChatGPT
Bezpieczne testy systemowe i integracja
Usługi integracji systemów IT
Dedykowane rozwiązania IT dla firm i startupów
Rozwój aplikacji chmurowych | Polska firma IT
Usługi chmury i transformacji cyfrowej
Zatrudnij dedykowany zespół IT w Polsce
Dedykowane zespoły programistyczne w Europie