Zorientowani na sukces zespołu

Optymalne zagospodarowanie dostępnej przestrzeni

Wyzwanie

Jak to zmieścić? – jeśli zajmujesz się transportem towarów, to pytanie zadajesz sobie nieustannie. Optymalne zaplanowanie przestrzeni ładunkowej jest dla Ciebie priorytetem, ponieważ przekłada się bezpośrednio na finanse Twojej firmy. Natomiast obliczanie najkorzystniejszego wykorzystania przestrzeni ładunkowej to żmudny proces, w którym nietrudno o błąd. Na szczęście powstał goodloading.com – platforma, która pomoże Ci odpowiednio zaplanować przewóz towarów.

Rozwiązanie

Aplikacja Goodloading, dzięki opracowanemu algorytmowi, pozwala na optymalne zagospodarowanie dostępnej przestrzeni ładunkowej. Program wyświetla proponowany plan rozmieszczenia ładunków na wizualizacji. Algorytm, w połączeniu z aplikacją obsługującą wizualizację 3D, która pozwala użytkownikowi na własnoręczne dostosowanie projektu, stanowi kompleksowe oprogramowanie ułatwiające pracę spedytorów.

Przy powstawaniu goodloading.com jako Netins Software byliśmy odpowiedzialni za backend aplikacji oraz wdrożenie frontendu. Przede wszystkim zoptymalizowaliśmy działania algorytmu, by mógł pracować z większą liczbą dodanych paczek. Wprowadzone przez nas zmiany pozwalają obecnie na grupowanie ładunków oraz przeliczanie ich dowolnej liczby.

Co zostało zrobione?

Dokonaliśmy usprawnień w zakresie UI/UX, co przyczyniło się do wzrostu liczby użytkowników o 350% w skali roku! Aby ułatwić użytkownikom korzystanie z aplikacji, stworzyliśmy system autoryzacji zintegrowany z Google, Facebookiem oraz Trans.eu. Oprócz tego opracowaliśmy algorytm rekomendacji oraz system udostępniania i zapisywania projektów, a także generowania plików PDF z planem załadunku. Bardzo istotną zmianą było także stworzenie nowej wizualizacji 3D, co ułatwiło użytkownikom pracę z ładunkami.

Jak to zostało zrobione?

Backend aplikacji został napisany z wykorzystaniem technologii Node.js. Przy implementacji sposobów logowania wykorzystano bibliotekę Passport.js. Cały system jest uruchamiany w kontenerach dockerowych w chmurze AWS. Baza danych została umieszczona w usłudze RDS, a kontenerami dockerowymi zarządza usługa AWS ECS. Pozwala to między innymi na bezprzerwowe wdrożenia nowych wersji aplikacji. Wizualizacja stołu roboczego została napisana przy użyciu biblioteki Threejs. Natomiast komunikacja klienta z serwerem następuje poprzez REST.

Podsumowując stos technologiczny: przy tworzeniu backendu aplikacji wykorzystano: Node.js, MySQL, Express.js, TypeScript, Docker, Passport.js, Nodemailer, Typeform, Winston, Mocha/chai, Pm2, Gitlab -ci/cd. Natomiast przy pracy nad frontendem użyto: Angular 7, TypeScript, Three.js, Sass, RxJs, Karma, Jasmine, Gitlab -ci/cd, Nginx.

Przy projekcie pracował trzyosobowy zespół, w którego skład weszli: backend developer, frontend developer oraz QA engineer.

 

Suche fakty

Team

  • Backend Developer (nodejs)
  • Frontend Developer (angular)
  • QA

Zgrany i kompetentny team to podstawa! Taki też wystawiliśmy do tego projektu.

Technologia

Backend:
Node.js, MySQL, Express.js, TypeScript, Docker, Passport.js, Nodemailer, Typeform, Winston, Mocha/chai, Pm2, Gitlab -ci/cd

Frontend:
Angular 7, TypeScript, Three.js, Sass, RxJs, Karma, Jasmine, Gitlab -ci/cd, Nginx