Developing a Comprehensive Order Management and Logistic Solution
TESTIMONIAL:
The client is a major US-based mobile automotive service provider. With a business presence in 15 US states, the client offers on-the-spot mobile installation services to both companies and individual customers regardless of where the customer’s vehicle or vehicle fleet is found within the company’s area of operation. The company runs a fleet of mobile installation vans, outfitted with top-notch mounting and balancing equipment that allows one to ensure the same quality result as at a brick-and-mortar store.
At the time the customer approached Backendless for assistance, they were looking to replace their legacy installation management application. Their existing application could no longer efficiently support the company’s service provision and hampered their business expansion. This system had rather limited functionality, leaving some of the installation-related business processes unautomated. For instance, customer’s employees had to enter all customer orders into the system manually, taking them over the phone.
Keeping track of order fulfillment and calculating the installation fees that varied in each specific case due to the varying distance to the customer’s vehicle was difficult and time-consuming. The company needed to develop a comprehensive installation management solution to consolidate and automate their numerous business processes. They also sought to minimize employee involvement and the required resources, and improve the overall quality of the company’s service. Backendless was engaged by the customer to develop the backend and web applications of their solution from the ground up and in their entirety.
To implement the project, Backendless initially put together a project team that consisted of 1 Project Manager, 2 backend software developers, 2 frontend software developers, and 1 QA engineer. Over time, this team has been augmented to include 1 more backend developer and 1 more QA engineer. The project has been managed jointly by one of the client’s Executives and our Project Manager. As no technical specification or solid artifacts the project team could use existed, they started with collecting the requirements for the solution. For this purpose, we established a very close working relationship with the Client, involving frequent daily interactions with them during the requirements gathering stage.
As the Client’s solution is a complex system with a wide array of sophisticated functionality, collecting a sufficient amount of information and consolidating this disparate information proved to be quite challenging. Our team also needed to deliver the system against a very tight deadline. It had taken us less than a year to develop the vast bulk of the system’s functionality before the solution went live in June of 2021. The system we have delivered efficiently consolidates and automates the full array of the Client’s business processes.
Additionally, the backend of the system fully supports the Client’s mobile driver application that they use for interactions with their mobile technicians. This mobile application has now become an integral part of the company’s installation management solution. The web application of the Client system consists of a customer support portal and Scheduler functionality. In the Scheduler, the customer enters their ZIP code, name, surname, address, vehicle model, and card details, and then selects the day that the installation is to be performed.
After this information is submitted into the system, the system assigns one of the predefined activity types to the order. The Customer support portal displays a list of all existing orders as a calendar, indicating their status and highlighting those that have not been fulfilled in time. It is possible for customer service employees to edit orders manually if any problems arise. For example, they may have to edit an order if, upon their arrival on the spot, the technician has found the vehicle locked in a garage, a traffic accident has occurred, or the vehicle was parked too close to a wall and could be approached from only one side. It is also possible to indicate that an order has been fulfilled only in part, or shift its fulfillment to another date and time.
The Client system performs all the required order fulfillment-related calculations automatically, taking into account such parameters as the distance to the spot where the customer’s vehicle is found and the time of day when the order fulfillment takes place (morning, noon, or evening). If an order has been fulfilled only in part, the customer’s charges are automatically adjusted by the system accordingly. In addition, the system’s web application groups the existing orders by state, calculates the most optimal and cost-effective routes to fulfill them, bundles together the orders it is expedient to fulfill consecutively together, and assigns them to a free technician.
Some of the more important and advanced functional capabilities the Client’s system provides also include:
- Sending the customer an email that contains the customer-provided order information and a link that can be used to re-schedule the installation in case of need.
- Sending the customer a SMS right after the order is made and 24 hours prior to the installation. Sending the customer а questionnaire after the installation.
- Adding and removing technicians.
- Sending the customer an inquiry about whether they would like to tip the technician.
- Editing the technicians’ schedule and creating National holidays in it.
- Editing locations.
- Creating free-of-charge orders.
- Cancelling and re-scheduling orders.
- Adding discounts to a specific order.
- Creating tasks and use cases.
The Client’s mobile application we have created the backend for allows a mobile technician to accept a customer order and notify the company’s customer support about it. After the technician accepts an order, the mobile app displays a map with a route they need to follow. The application calculates the approximate time of the technician’s arrival and informs the customer accordingly. Simultaneously, the customer receives a link they can use to follow the technician’s progress and see their current location. Upon arriving on the scene, the technician notifies customer support about their arrival with just one click.
They take one or more snapshots of the customer’s vehicle, and, after they are through with the installation procedure, use the application to specify the number of items they have replaced, calculate the cost, and bill the customer. Although Backendless’ project team has only been engaged in creating the backend functionality for the mobile app and not its mobile functionality as such, we have helped the Client optimize the latter as well. At the present time, our project team is adding functionality that will automate customer’s business processes associated with entire vehicle fleets. Since the product’s delivery in the summer of 2021, we have also been supporting the Client’s rapid business expansion, adding 5-6 new service locations per month.
Our technical solution for the project included the following technologies and tools:
- Frontend: Backendless’ UI Builder & Codeless
- Backend: Backendless Pro (JavaScript), NodeJS
- Testing: Mocha & Chai, Pytest
- Integrations: Multiple Telematics, Route Optimization, and Tax software applications
- Platform: The Backendless Pro Nocode platform
Two significant technical challenges we have encountered while implementing the project were the need to ensure a high processing speed for a large number of concurrent users from the company’s many locations, and implementing complex, data-intensive calculations.
Within a record time and with the minimum possible cost to the Client, we have consolidated and automated the bulk of the customer’s business processes, reducing the time spent by their employees on the corresponding tasks by at least a factor of 2. The customer has been able to optimize their costs and received the technical means to expand their business both vertically and horizontally.