Powrót do realizacji
Dostosowane rozwiązanie do efektywnego zarządzania operacjami
Powrót do realizacji
Klient
CustomEase
Branża
Nieruchomości
Produkt
Aplikacja webowa
Data
2021
Umiejętności
Ruby on Rails
Vue.js
Modelowanie procesów
Javascript
RWD
Multitenancy
CustomEase to projekt dla Granite State Cabinetry, renomowanej i doświadczonej firmy zajmującej się remontami domów. Firma działa na rynku od ponad 25 lat i zrealizowała ponad 10 000 projektów zabudowy kuchennej. Jest bezkonkurencyjna w swoim obszarze działalności i cieszy się doskonałą opinią, co potwierdzają świetne recenzje klientów.
Aplikacja została stworzona od podstaw, ale była nową wersją projektu, z którego GSC już korzystało. Ich system do zarządzania zleceniami serwisowymi był przestarzały i mało intuicyjny. Działał bardzo wolno, miał skomplikowany interfejs, był nieintuicyjny i wyglądał staro. Ponadto brakowało mu kilku kluczowych funkcji, które były niezbędne dla klienta. System nie był również przyjazny dla urządzeń mobilnych, co było istotnym problemem dla pracowników terenowych klienta.
Zdecydowaliśmy, że biorąc pod uwagę zakres brakujących funkcji i stan obecnego kodu, najlepszym rozwiązaniem będzie całkowite przepisanie systemu. Czas potrzebny na dostosowanie istniejącego systemu przewyższyłby czas, w którym moglibyśmy dostarczyć zupełnie nowe rozwiązanie. Dług technologiczny był zbyt duży, a jakość kodu znacznie odbiegała od naszych standardów. Refaktoryzacja była możliwa, ale nieopłacalna dla klienta pod względem budżetu i harmonogramu. Klient zgodził się z naszą oceną, więc rozpoczęliśmy pracę nad projektem.
Klient nie był już w stanie efektywnie pracować na istniejącym systemie. System nie był zgodny z RWD, a duża część ich pracy musiała odbywać się w terenie, gdzie świadczyli swoje usługi. Oznaczało to, że obsługa na tabletach i telefonach komórkowych była priorytetem, ale system działał jedynie na komputerach stacjonarnych.
Nawet na komputerach aplikacja była wolna, mało wydajna i nieintuicyjna. Klient musiał poświęcać dużo czasu na szkolenie nowych pracowników, a mimo to obsługa systemu nadal była skomplikowana. Wkrótce po wdrożeniu 'gotowego' produktu odkryto, że potrzeba wielu dodatkowych funkcji. Ich obecny system nie był łatwo rozszerzalny, a dodawanie nowych funkcji wiązało się z wieloma regresjami i pogorszeniem wydajności.
Klient był pewny swojego procesu biznesowego, i słusznie, ponieważ firma odnosiła sukcesy. Chciał sprzedawać swoją metodę prowadzenia działalności wraz z aplikacją, która ją obsługiwała, innym firmom w przyszłości. Oznaczało to, że system musiał obsługiwać multitenancy i być łatwo rozszerzalny, aby sprostać wymaganiom różnych klientów.
Wykorzystaliśmy Vue.js oraz niestandardowe, elastyczne style oparte na flexboxie do stworzenia nowoczesnego, responsywnego interfejsu. Dzięki temu klient mógł korzystać z aplikacji na dowolnym urządzeniu, a sama aplikacja była nowoczesna i intuicyjna.
Dostosowaliśmy aplikację do optymalizacji obsługi zleceń serwisowych, umożliwiając łatwe tworzenie i śledzenie kosztów, kamieni milowych, usług zewnętrznych i wewnętrznych dostawców, danych klientów, postępu prac i innych aspektów.
Każdy projekt klienta zawierał wiele powiązanych danych: kamienie milowe, usługi, produkty, koszty – wszystko było śledzone na różnych etapach projektu. Widok pojedynczego projektu był przejrzysty, ale klient potrzebował także sposobu na analizowanie wielu projektów jednocześnie. Przeanalizowaliśmy jego potrzeby i stworzyliśmy solidny system raportowania, który umożliwił łatwe przeglądanie i wykorzystywanie danych.
Zapewniliśmy, że klient po otrzymaniu gotowego systemu mógł łatwo sprzedawać tę samą aplikację innym firmom bez naszego dalszego zaangażowania. Wdrożyliśmy system wielokrotnego najmu, który umożliwiał klientowi tworzenie i zarządzanie nowymi najemcami – wszystko w obrębie samej aplikacji.
Cały system opierał się na projektach – była to główna jednostka, do której wszystko było powiązane. Kreator tworzenia projektu był kluczowym elementem, a widok zarządzania projektem najważniejszym ekranem. Jedną z kluczowych funkcji, której klient naprawdę potrzebował, było zoptymalizowane zarządzanie podatkami. Wymagało to ścisłej współpracy między kierownikami projektów a programistami, aby zapewnić, że system będzie mógł prawidłowo obsługiwać złożone operacje finansowe.
Po ukończeniu zaplanowanego systemu klient otrzymał nowoczesną, szybką i intuicyjną aplikację, która zoptymalizowała jego procesy i ułatwiła pracę. Dodatkowo mógł ją sprzedawać.