Enterprise API providing location data for a global retailer

5 minutes read
case-study
ClientNDA
IndustryRetail

Our client, a global retailer provides over 200+ internal domain-specific services, that are used to run its global business. Each service serves a particular purpose and often requires collaboration with other domain service offerings. At the core of the services network, one of service exists to provide key information relating to brick-and-mortar store locations and virtual locations worldwide, such as websites.

Download this success story as PDF

Print it out, take it with you to read later, or share it with your peers.Free download
case-study

Every store possesses unique features from which insight can be derived such as opening hours, geo-coordinates, addresses, formats, and also a list of in-store services.

These Location services feed various frontend and backend applications that in turn support almost 170 internal departments through a dedicated custom enterprise API, providing universal access to both data warehouses & data lakes. This enables each customer using the service to combine location data with other variables to provide business-critical value through these services. 

The challenge

Our customer had created an initial version of a system that was narrow in scope and enabled basic navigation. This had been a web-based application that presented some XML data using an API-friendly method. The information had been stored individually within third-party applications instead of an internal database. 

The use of third-party software has made it difficult to process and share data easily. This was one of the reasons that tech security and data management actively pushed to industrialize the service. 

During the implementation phase of this project, certain scalability issues came up, and it proved nearly impossible to achieve the ideal solution since everything was written in legacy Java code and atop the mainframe infrastructure.

The solution

VirtusLab (VL) first connected a new version of the solution, atop the existing mainframe, to stabilize the solution. Gradually VL rewrote the entire system to mitigate the risk of system failure or downtime. 

The new enterprise API now supports essential business operations with a continuous flow of trustworthy information. 

VL created a NoSQL document database to store the information in-house and introduced a modern infrastructure that included a backup system, increased security capability and wrote frontend applications with React. These web applications enabled users to log into the system to browse and modify the location data. 

The enterprise API gained its reliability due to the change from an old Java version to Kotlin, introducing the most up-to-date tech stack into the system. Using reactive programming enabled the reduction of latency, high throughput, and scalable applications and made it more scalable without affecting the infrastructure budget. 

The language change also helped to improve stability. VirtusLab introduced an automated release pipeline infrastructure (CI/CD) to work in a cloud environment and to allow for thousands of automated tests. We ensured that everything ran smoothly and that the data was always up-to-date.

The results

VirtusLab created a stable and reliable enterprise API that handles large amounts of location data and fuels over 150 business-critical internal systems and external applications. 

The enterprise API ensures enough insights for employees to run business-critical processes dependent on this data type and provides built-in security for this data. Meanwhile, these processes have proven to be solid and scalable and have helped the retailer keep up with its strong growth.

The tech stack

Languages

Vert.x-logo
java-logo
Rxjava-logo
Kotlin-logo

Database

MongoDB-logo

Eventing platform

Kafka-logo

Infrastructure

aws-logo
Azure-logo

Take the first step to a sustained competitive edge for your business

Let's connect

VirtusLab's work has met the mark several times over, and their latest project is no exception. The team is efficient, hard-working, and trustworthy. Customers can expect a proactive team that drives results.

Stephen Rooke
Stephen RookeDirector of Software Development @ Extreme Reach

VirtusLab's engineers are truly Strapi extensions experts. Their knowledge and expertise in the area of Strapi plugins gave us the opportunity to lift our multi-brand CMS implementation to a different level.

facile logo
Leonardo PoddaEngineering Manager @ Facile.it

VirtusLab has been an incredible partner since the early development of Scala 3, essential to a mature and stable Scala 3 ecosystem.

Martin_Odersky
Martin OderskyHead of Programming Research Group @ EPFL

VirtusLab's strength is its knowledge of the latest trends and technologies for creating UIs and its ability to design complex applications. The VirtusLab team's in-depth knowledge, understanding, and experience of MIS systems have been invaluable to us in developing our product. The team is professional and delivers on time – we greatly appreciated this efficiency when working with them.

Michael_Grant
Michael GrantDirector of Development @ Cyber Sec Company