API-led Connectivity Development to Unlock Monolithic Legacy Systems

Splitting the monolith into multiple APIs for streamlined system support

undefined
Customer location
  • USA USA
Project duration
  • 1.5+ years, ongoing

Client and Business Goals

Our client is an industry-leading property and casualty insurance company headquartered in the USA.

Having started from a test project, our cooperation grew into a long-term partnership with a series of successfully delivered legacy modernization projects. Having faced another technical challenge related to their monolith system functionality and maintenance, the customer didn’t have to search for a reliable partner to split the inner system into separate APIs — they immediately hired Symfa as an extension of their in-house team.

Challenge

Some requests to the endpoints crash. We conduct the analysis, profile the request, and depending on the outcome, alter the request and add indexes to fix the issue.

In some cases, requests don’t crash or time out but return server errors. We conduct thorough debugging to localize the problem and change providers' implementation to prevent errors with open database connections.

Solution

Before getting down to the project we conducted in-depth research of the client’s operational domain and the software in use.

The project has a classic 3-level API architecture and implies splitting the monolith into separate APIs that communicate with each other while performing their particular functions. Within the project, we refactor the existing code and optimize the requests to the database. Utilizing the Execution plan in MS SQL management studio, which conducts the request speed analysis and reveals which of them are timed out. If there are any, we optimize the code, ensuring a faster response. In some cases, it happens that there is no response to a request at all, and we conduct bug-fixing to make them work.

Some application mappers contain the code affecting performance and response time. To fix it, we migrate the code to a new API avoiding a large number of mappers.

Technologies

  • MS SQL
  • .NET Core
  • C#
  • SQL Kata
  • Dapper
  • Unit tests

Results

There is no deadline specified for this project and new tasks appear on an ongoing basis. We are strictly following the requirements outlined by the business analyst on the customer’s side, and our work is highly appreciated by the client.

Considering smooth communication with our experts and the overall project progress, the client decided to expand the team from 3 software developers to 7.

Related projects

Contact us

Our team will get back to you promptly to discuss the next steps