Leading financial analysis and education provider modernizes 20 year old monolith with vFunction and AWS

Executive summary With over $6 billion in annual revenues and 13,000+ employees, this US-based business and financial services company is a leading provider of financial analysis software, consulting, training and […]


Annual Revenue


Global Employees


Educational Platform Users

Executive summary

With over $6 billion in annual revenues and 13,000+ employees, this US-based business and financial services company is a leading provider of financial analysis software, consulting, training and software services.

One of the company’s highly profitable and business-critical brands is an educational and training business platform that offers licensing courses, advanced certifications, continuing education and custom training for financial services professionals.

Over 500,000 students have taken courses on this platform, which is an aging monolithic enterprise application built nearly two decades ago. The monolithic architecture is now challenging their engineering teams with a lack of flexibility, development velocity, and accurate documentation, as well as a “black box” scenario resulting from functionality built by multiple teams with various development and release strategies over the years.

The challenges

Aging architecture

The application is a Java monolith developed over nearly two decades across multiple teams with different development practices and project sprints. Various development and release processes made it difficult to comprehend the service footprint and functionalities.

Documentation gaps

Over the years, documentation about the system became muddled. Without a clear grasp of how each part of the application functions, the team was unable to accurately scope and plan modernization efforts without committing to years of reverse engineering.

Stalled manual efforts

As a result of decades of mixed development and release patterns plus a general lack of accurate documentation, modernization efforts stalled. The team estimates that as much as $1 million was spent trying to manually update and support this critical application–without success.

The solution with vFunction

Transformation to microservices

The team’s strategy depended on the ability to transform a monolithic application to a decoupled microservices architecture deployed to AWS–all while shielding customers from negative impacts due to refactoring. Using a combination of vFunction Modernization Hub and AWS Migration Hub Refactor Spaces, the team started by decomposing and extracting functionality for a single critical microservice.

Automation and AI with vFunction

The team used vFunction Modernization Hub to automatically assess, analyze, and extract a single microservice from their monolith without making changes to their existing code base. This allowed them to create fresh APIs, replacing existing entry points, to this isolated service and begin a broader modernization refactoring effort.

Routing and provisioning from AWS

Using AWS Migration Hub Refactor Spaces, the team provisioned a new environment to operate alongside the existing monolithic application. This included routing for the newly extracted microservice, and a set of default routes and services that matched existing API calls for the monolith.

The results

Clearly defined scope and resources

vFunction gave the team insights into the system architecture, suggested domains for new microservices, and the ability to refactor code at the individual class level. This enabled them to accurately determine the scope of the modernization effort, identify the resources, time, and expertise needed, and locate specific areas of functionality where refactoring would provide the
largest impact.

Application scalability

By moving from a complex, on-premise monolith to individual microservices in the cloud, they were able to achieve higher levels of scalability for critical services. Leveraging AWS technologies like EC2 lets the team flexibly manage and provision compute resources to meet their ideal targets without risks to the user experience.

Future risk reduction

This industry leader now has a clear path forward and the right tools to analyze, extract, provision, and host additionally decomposed microservices going forward. The team is confident that this “factory model” approach to modernization will enable them to eliminate risk due to aging code, frameworks, and complexity. This is especially valuable for incorporating future IT functionality as well as new acquisitions for their application portfolio.

Get started with vFunction

See how vFunction can accelerate engineering velocity and increase application resiliency and scalability at your organization.