An Automated Hybrid Development Environment Infrastructure for Financing Provider

Executive Summary

Vendigo provides a platform for creating a loan in seconds and either sending it to the customer or completing it with them on any device. By partnering with market-leading banks and other lending institutions, they offer the most actual and relevant data for rates and loan terms. The company reached out to Advascale at the initial stage of product development with a request to transition from MVP to Go-to-Market Product with consideration of all the security and financial data processing regulatory standards.

Advascale has created the infrastructure for interacting with financial institutions’ applications and ensured an automated development environment.

Customer Challenge

Vendigo had some development and QA challenges related to modifying and updating the software after deployments to fix bugs and improve system performance.

They needed to get highly reliable, redundant, and flexible IT Infrastructure appropriate for the financial technology industry. The uptime period and the security considerations are critical.

The business challenge was to have a solution that incorporates the possibility of securely having real-time data from all financial institutions along with the necessity to make more convenient and agile conditions for Vendigo’s development team for issuing software patches.

Hence, for this project reliability has the primary meaning.

“You’ve given the team insight into all of this, and you’ve given us a way to take the work and continue to evolve it ourselves. So that’s the thing that impressed me the most about the Advascale team.”

Michael Macklin, CEO, Vendigo

Advascale Solution

The Advascale Team designed the infrastructure for Vendigo from scratch in 2018 and is maintaining it now.

Vendigo Production and Staging environments are located in one region and deployed in different VPCs. Both environments are created from CloudFormation stack templates.

Due to security reasons and regulatory requirements a component of the cyber-defense SaaS system was integrated.

Environment templates create VPC and network resources, AutoScaling groups, LoadBalancers, RDS MySQL database, ElastiCache Cluster, and others. The staging environment replicates the production environment with lower instance sizes and reduced availability.

WordPress was deployed into production, as a nested stack, but in the course of the product’s lifecycle was moved to separate hosting.

Also into the staging stack was deployed infrastructure for development environments, as a nested stack. Development environments are disposable and created for feature branches, named according to the Jira task number. Jenkins is deployed on the top of the Staging environment in the High Availability scheme using CloudFormation templates. CI/CD pipelines create configuration files, build and push docker images to ECR and deploy the application to environments. A connection to production instances from Jenkins is provided by JumpHost (bastion) - an additional element for enhancing security and privacy aimed to provide access to a private network from an external network.

Later, while introducing a modernization and optimization of the infrastructure, AutoSclaing Groups were imported to spotinst.io and launched on spot instances - Elastigroup and Managed Instances - for cost reduction.

Results and Benefits

Since Vendigo has a mono-product, an application that is used by several thousands of users in maximum workload, Advascale developed a solution for this project with high reliability, flexibility, and basic scalability.

With multiple service replications, top-notch security, and resource redundancy, Advascale offered exceptional reliability with the smallest possibility of downtime.

Scalability was covered by self-healing instances - the redundancy of resources ensures that if something gets down it would rescale itself.

By adopting the flexibility of the cloud, we helped to rearrange certain business processes and solve development and QA challenges with an automated hybrid development environment as a part of a custom SDLC solution. Advascale implemented disposable dev environments that provide the ability to individually deploy and test individual features, which made it possible to minimize the human factor in the releases of their financial product. As a result Vendigo received the most flexible development environment and fault-tolerant production.