Performance optimization through microservices: rethinking Supplier Financing monolithic architecture
ING Bank Śląski
How we rebuilt the monolithic architecture of the Supplier Financing
An online financing service was experiencing much more traffic than expected, which negatively impacted its efficiency. To meet this challenge, we rebuilt it to utilize microservices, allowing it to meet heavier demand while increasing the architecture’s scalability and flexibility.
Our long-term cooperation with ING Bank Śląski has included numerous IT projects. For several years, we have been working on Aleo.com, Poland’s largest online business directory. Its users can access business’ registration data, public financial documents, verified opinions, and customer ratings. In addition, there are purchase and sales tools that can help users improve their company processes.
to support a growing number of clients and financial transactions.
to eliminate performance hurdles.
In TDD, the entire application development process is faster and more flexible. Its methodology ensures programmers operate in a secure environment that can implement complex changes – something that’s extremely important for financial systems. It’s not necessary to regularly and manually verify whether the recently added application codes work; in TDD, tests are run automatically. This saves time spent defining and reporting a manually identified error.
We strove to find and eliminate problems, prevent future issues, and work out innovative solutions. We were driven by the imperative of continuous improvement performed in baby steps. During retrospect meetings, the whole team worked together and searched for ways to refine the areas discussed in the session.
We also employed some elements of the Lean approach, such as Kaizen and the 5 Why (5W) method. The latter is used in the Toyota Production System to get to the root cause of a problem by asking "Why?" five times after a problem has been spotted. The following example illustrates its use:
In a Toyota factory, an employee is throwing sawdust on the floor.
|1. Why are you throwing sawdust on the floor?||Because the floor is slippery and can be dangerous.|
|2. Why is the floor slippery and dangerous?||Because it is covered with oil.|
|3. Why is it covered with oil?||Because there is a leak in the machine.|
|4. Why is there a leak in the machine?||Because oil goes down the connector.|
|5. Why is oil going down the connector?||Because the connector's cover is worn out.|
The method allows us to break problems down into individual blocks.
Results and further plans
With the newly flexible and efficient design in place, ING Bank Śląski can now increase their focus on winning new clients and scaling their business without worrying about the technical foundation of their system. Three key changes have been observed:
a reduced number of service requests.
an accelerated change implementation process.
reduced risk of regression errors.
The results of this have been so good that we’re jointly planning to decompose the entire Aleo system into microservices. We’re also looking at redesigning the front-end and UX design of the Supplier Financing.