We Stand With Ukraine
Read full statement
menu

Successful Migration and System Enhancement for Quantium

Quantium

About the client

Founded in 2002, Quantium has established itself as a prominent global leader in Data Science and Artificial Intelligence. With a team of over 1,200 experts spread across 14 offices worldwide, Quantium specializes in data-driven solutions for various industries like FMCG/CPG, retail, financial services, health, and the public sector. 

Source: Quantium

Quantium makes data-driven decisions, provides powerful shopper insights for retailers, reduces risk, and enhances growth for financial institutions. Quantium also predicts customer behavior, improves the insurance industry’s customer experience, improves patient outcomes through data analysis, and optimizes data value for government organizations.

Story behind

The client sought Kitrum’s expertise to enhance and support their existing team, resolve any existing bugs, and improve the overall system performance. Additionally, they entrusted us with a crucial undertaking—a substantial re-platforming project to migrate their application from an outdated technology stack to a modern, scalable, and efficient one.

The main challenges

To identify and address existing issues and bugs

This involved performing various tasks, including analyzing the problem, devising solutions, writing fresh code, improving existing code, and seamlessly incorporating it into the new technology stack.

Re-platforming

To plan and execute the migration of the application from the old technology stack to the new stack. We had to overcome discrepancies in programming languages, frameworks, and libraries, ensuring the smooth integration between different components. This required careful coordination, extensive testing, and resolving any compatibility-related errors or conflicts.

System testing and validation

Сonducting thorough end-to-end testing across the entire application presented a challenge due to the complexity and scale of the project. To create comprehensive test cases, build robust testing environments, and perform extensive validation to identify and rectify any issues or regressions.

Cooperation

This project was executed through an outstaffing model, with resources from Quantium and Kitrum collaborating seamlessly to achieve the desired outcomes. For the successful project migration, Quantium and KITRUM assembled a team of highly skilled experts.

Project execution

  • Issue identification: We relied on user feedback, customer support tickets, and internal testing to identify the specific issues that needed attention. We prioritized them based on their impact on user experience, system stability, and business objectives.
  • Code and system analysis: We conducted in-depth code reviews and system analysis to understand the existing architecture, dependencies, and potential areas of improvement. This involved examining the legacy codebase, assessing its quality, and identifying any potential issues or bottlenecks.
  • Bug reproduction and isolation: We aimed to reproduce the reported bugs in controlled environments to understand their triggers and impacts. By isolating the problems, we could investigate the affected components or modules and determine their relationship to other parts of the system.
  • Collaboration and knowledge sharing: We fostered collaboration among team members, including developers, testers, and stakeholders. Regular discussions and knowledge-sharing sessions helped us gather different perspectives and expertise, leading to more effective investigation and problem-solving.
  • Solution implementation: We developed solutions to address the identified issues based on our analysis. This involved writing new code, refactoring existing code, and integrating with the new technology stack. We followed best practices and coding standards to ensure the system’s reliability, maintainability, and scalability.
  • Testing and quality assurance: We conducted thorough testing, including unit tests, integration tests, and end-to-end tests, to verify the effectiveness of our solutions. This allowed us to catch any regressions or unintended side effects and ensure the stability and functionality of the system. The duration of this phase took about half a year.
  • Re-platforming: As part of the project, we planned and executed the migration of the application from the old technology stack to the new stack. This involved assessing the compatibility of the existing code, data migration, and making necessary adjustments to align with the modern architecture and infrastructure. The development and migration phase involved refactoring the codebase, integrating the metrics library, and migrating from the old source stack to the new stack. This phase took 3,5 years.
  • Source stack migration: We transitioned the application from the old source stack to a new stack. We gained access to improved tools, enhanced functionalities, and better support by migrating to a newer stack.
  • Direct database connection replacement: In the old source stack, the application had a direct connection to the database. As part of the migration, we re-architected the system to use a more robust and scalable approach. We implemented an intermediary layer with Metrics Library to handle database interactions. This decoupling improved the overall system flexibility, allowed for better error handling, and facilitated future maintenance and updates.
  • Performance optimization: With the metrics library in place, we analyzed the collected data to identify areas where performance improvements were needed. We optimized critical code segments, reduced database queries, and fine-tuned resource utilization based on the insights provided by the metrics library. These optimizations resulted in faster response times, improved scalability, and better resource management.
  • Maintenance and debugging: The new stack, with the integrated metrics library, facilitated easier maintenance and debugging of the application. The comprehensive metrics allowed us to pinpoint performance bottlenecks and errors, enabling faster troubleshooting and resolution.

We maintained detailed documentation throughout the project execution, including issue tracking, code changes, and architectural decisions. This documentation ensured knowledge transfer, facilitated future maintenance, updates, and provided valuable insights for the team and stakeholders.

Results

By following this comprehensive investigation and problem-solving process, we successfully supported the existing functionality, fixed bugs, and performed a seamless re-platforming of the application to a more modern and robust technology stack.

Cost Savings

There are cost savings by migrating the solution from the old source stack with a direct connection to the database to the new stack with a metrics library. The new stack might offer more efficient resource utilization, scalability, or cost-effective infrastructure options. These improvements lead to reduced operational costs for the customer, such as lower hosting expenses or improved performance efficiency, resulting in overall cost savings.

User Experience and Retention

While the specific impact on new user acquisition is not addressed directly by the technical solution, improving system performance, stability, and scalability has positive effects on user experience. 

Potential Revenue Generation

Although the focus is not solely on revenue generation, an improved and more efficient system can indirectly contribute to revenue growth. A stable and scalable solution can handle increased user loads, enabling the customer to serve a larger user base, process more transactions, or provide new services. These factors could positively impact the customer’s revenue generation potential.

Want to migrate your app to a standout tech stack?