
O kliencie
Kolsar Recykling jest firmą zajmującą się przetwórstwem odpadów działającą na terenie kilku powiatów.
Wyzwanie
Kolsar w ich codziennych sprawach wykonuje wiele dostaw i odbiorów z dużego obszaru geograficznego.
W swoich codziennych poczynaniach używali prostego arkusza Excel by śledzić harmonogram, lecz w miarę rozwoju firmy stawało się to coraz bardziej uciążliwe.
Planowanie tras dostaw jest żmudnym zadaniem, gdzie błędy się zdarzają.
Cel
Dostarczyć aplikację, która:
- Jest dostepna dla wielu typów urządzeń (komputery stacjonarne, tablety)
- Zabezpiecznona i dostępna jedynie dla użytkowników
- Dostarcza różne zestawy funkcjonalności, uzależnione od typu użytkownika
- Pozwala na planowanie dostaw i odbiorów
- Planuje dostawy i odbiory wyznaczając optymalną trasę
- Minimalizuje koszta utrzymania
Stos technologiczny
React.js, MaterialUI, Node.js, Express.js, MapQuest, Leaflet.js, MongoDB.

Proces
By osiągnąć szybki czas dostawy i zredukować czas dewelopmentu zaprojektowano responsywną aplikację webową z zamiarem renderowania na dwóch rodzajach urządzeń.
Biblioteka MaterialUI dostarczyła komponentów „miłych dla oka”, jednocześnie ograniczając czas projektowania i kodowania.
JWT pozwoliły na bezpieczny dostęp jedynie uprawnionym użytkownikom. Wszystko zostało obsłużone przez silnik Node.js, jako lekkie rozwiązanie backendowe.
Serwis MapQuest został wybrany jako dostawca rozwiązania optymalizacji tras, którego wyniki wyświetlane są na mapie Leaflet.js wraz z elementami kontrolnymi w celu manipulacji trasy, w miarę realizacji dostaw.
By ograniczyć zużycie kwoty zapytań do serwisu, wyniki odwrotnego geokodowania są cache’owane w bazie danych z wysoką wartością TTL, ponieważ istnieje bardzo niskie prawdopodobieństwo, że się zmienią.
MongoDB zostało wybrane technologią przechowywania danych ze względu na zmienną strukturę danych geolokacyjnych, oraz nierelacyjną strukturę danych użytkownika.
Zakup długoterminowej subsktypcji u lokalnego dostawcy hostingu pozwolił na zminimalizowanie kosztów utrzymania rozwiązania do 10zł miesięcznie, oraz uniknięcie opłat za użycie zewnętrznych serwisów i licencji.
Rozdział funkcji użytkowników według ról, pozwolił na uniemożliwienie podejmowania niedozwolonych akcji.

Rezultat
Dzięki stworzonemu rozwiązaniu, klient mógł przestać posugiwać się plikami Excel i planować dostawy w swoim biurze, podczas gdy kierowcy byli w stanie realizować trasy i notyfikować biuro o tym, czy dostaw została opłacona na miejscu, odroczona do czasu odbioru, lub poinformować o odroczonej czasie odbioru.
Pojedyncze narzędzie przejęło rolę planowania, zarządzania harmonogramem i płatnościami, stając się głównym środkiem realizacji zadań.