Although the niche of logistics and cargo delivery is characterized by fairly stable business processes, the ready-made software solutions that are designed to automate and synchronize them (in particular, TMSes) are quite difficult to use and very often cannot fully cover the needs of representatives of this business niche.
That is why a well-known trucking company in the USA contacted us to develop a TMS system from scratch, which as a result turned out to be cheaper than the adaptation and support of existing out-of-the-box TMSes.
Who Is Our Client?
Our client is a trucking company with great drivers and well-trained staff. They specialize in flatbed, step deck, oversize, and refrigerated loads. The company has been in the local supply chain market since 2003 and already has enough employees and vehicles in its staff to come to the decision to automate its internal business processes.
The Client's Request: to Create a Transport Management System and Driver Mobile App
Every day, the employees of the client company had to perform colossal amounts of manual work, including recording the cargo dispatching in Google Sheets and communicating with drivers via instant messengers. It was extremely time-consuming and had certain difficulties in synchronization.
The fact is that despite the presence on the market of a large number of ready-made custom solutions, in practice they turned out to be difficult to adapt to the business processes of a particular tracking company.
Thus, TMS's original focus on helping and growing its customers' business through planning and optimizing shipments with existing solutions was unattainable. Indeed, insufficient or incorrectly chosen TMS functionality interferes with the efficient execution of business processes instead of helping them and often leads to slowdowns and errors.
All this is primarily due to the high complexity of the vast majority of TMSes on the market, as well as the high requirements for their configuration and use. Moreover, such software solutions often contain too many features and configurations that many customers never use, while not having functionality that is really necessary for a particular business.
Another problem that arose when analyzing ready-made solutions was that they did not have some specific functions. For example, for refrigerators, there is no ready-to-use functionality for:
- checking the set refrigeration mode and then taking a photo in the mobile app;
- setting the required temperature in the mobile app and then taking a photo.
This was necessary for our client so that drivers would not ignore the requirements of cargo transportation, additionally check their compliance, and, as a result, the recipients of the cargo had fewer claims (which means that the client’s company itself suffered less losses).
After an in-depth analysis of out-of-the-box TMS services, the client concluded that in this type of software, complexity leads to inefficiency, and it is much more important for the company to provide its employees with the opportunity to immediately switch to using the system without many hours of training.
What Goals We Followed and What Services We Provided?
To get the most out of the investments, the client decided to contact us to create a custom software for logistics business management that would be fully tailored to the company's business processes and at the same time would not require long-term onboarding for its users (company employees), regardless of their work responsibilities. The client also set us the task of creating an easy-to-use mobile application for drivers that would simplify the processes of cargo dispatching.
What Technologies Were Used in the Development of Custom TMS?
After creating an accurate list of technical and non-technical requirements for a custom TMS software, our experts have chosen the following technology stack for its implementation:
for TMS’s backend:
- PHP8.0, Laravel + Octane
for TMS’s frontend:
- ant design 4
for mobile application for drivers:
- Flutter 3
- Dart 2.17
Our Workflow and Top-3 Challenges with the Gamma TMS Project
When we started to develop a web application, our team chose the Agile and Scrum approaches and established constant communication with the client to exclude edits at the final stages of the software product implementation. In particular, we made it a rule to call the client at least once every two weeks to discuss what has already been done, if necessary, optimize it, and plan further steps to develop the project.
Also in the early stages of development, we organized a series of interview calls with company employees to thoroughly understand their job responsibilities and help them automate what they repeatedly have to do manually.
Thus, the top 3 challenges that we had to overcome for the client through the development of a custom solution were:
- a large amount of manual work
- cargo dispatching in inappropriate software (in Google Sheets)
- communication between drivers and employees of other departments of the company via general-purpose messengers (in particular, via Viber)
What Problems Did Our Team Face?
When we started developing the platform for logistics business management and the mobile application for drivers, we faced a number of problems. First of all, they consisted of the fact that the company had its own hidden business processes that were difficult to identify before we started the project. This provoked the need to repeatedly redo some functional modules, each time adapting them to the new amendments of the client.
Specifically, we had to develop a mobile application for drivers that could scan documents (BOL (bill of lading), DOT inspection reports, receipts, etc.) in a few steps. There was no ready-made solution for Flutter, and developing an analog from scratch was very expensive and time-consuming. We found a way out of the situation by choosing a ready-made library, but its interface turned out to be too complicated and required optimization. Therefore, we engaged our best Android and iOS developers and specially built an interface for this library, thanks to which drivers would not have to cut out individual elements of a photo, change saturation, etc. All these operations became available to end users in a couple of clicks.
We also encountered certain problems in the process of developing a module for the accounting department. In particular, we needed to provide the client with functionality for flexible configuration of access rights and capabilities for several user groups, as well as automate payroll depending on the type of driver (truck owner or truck carrier).
And finally, we were tasked with providing several useful integrations (for example, with fuel systems, paid services, logbook, etc.), synchronizing their updates with our custom platform.
What Solution Did the Client Need and What Was the Result?
The client needed a solution that would ensure the most efficient management of business processes and be able to automate them so that company employees do not have to perform routine tasks manually.
The result exceeded expectations: we created a customizable platform with unique features for specialists from each of the client company's departments. A custom platform for managing a transport company and a mobile application for drivers will be launched by the end of January 2023. At the moment, we already have an MVP, which is rapidly developed and tested.