We are engaged in the development of e-commerce. Creation of an order management system, communication with the client and visualization of all processes.
The client is the owner of a regional online auto parts store. He reached to us with a problem, which was the slow speed of the e-commerce system when increasing the number of orders.
First of all, we conducted an analysis of the system state and discovered technical errors that occur when working with orders. Although they don't directly affect functionality, they affect the system speed in a whole. Also we understood that the system is too monolithic and it needs to be divided into several separate projects, which interact with each other.
As a result of the system update sequence discussion, we first decided to start by fixing the errors, and only after that start on to optimizing the architecture. Since there was a chance that some of the errors would be transferred to the new architecture.
After error fixing, we began work on updating the architecture, separating each part from the big application. The work was carried out iteratively, gradually integrating by API each separated project to the other parts of the system.
As a result of the update, people who work with the system were able to process 15% more orders now. And in the future, the system will be able to withstand three times and more growth.