Cloud DevOps for SaaS

Build a rock-solid client base by eliminating product downtime

Services
Cloud Engineering
Industry
SaaS
Problem

West Loop Strategy’s client, a SaaS provider, was struggling with application downtime related to production releases. Their client-serving application is a key component of their product suite, and is used to assist customers with data assets by standardizing disparate formats into application-ready data. Product downtime was unacceptable to the business, and caused many problems with client satisfaction. Our client needed to provide a more stable product to their customers, and to reduce the frequency of application downtime.

Solution

West Loop Strategy worked with the client to identify the root cause of the downtime- it wasn't the application code itself, but rather it was the integration of the serverless components and cloud infrastructure that supported their product. Each component was developed in relative isolation, and integration testing of the solution was lacking. Reducing the application downtime required a multi-pronged solution:

  1. Implementing Infrastructure as Code (IaC) to remove manual configuration of cloud infrastructure - we recommended Terraform
  2. Building out a full Continuous Integration / Continuous Development (CI/CD) pipeline to ensure deployments were performed consistently - we recommended Azure DevOps
  3. Building a suite of Integration Tests to ensure all components were tested as a wholistic solution

The test suite here was key, and we spent some time to ensure it truly tested the components as would exist once deployed. To accomplish this, we:

  • Deploy a fully isolated instance of the application on the cloud
  • Mock client behavior - uploading data as is, and checking final results for completeness and accuracy
  • Destroying the isolated instance after results are logged
  • Gating the deployment to dev / prod on the success of these integration tests
Result

Upon completion of the engagement with West Loop Strategy, the client was able to reduce the frequency of bugs making it to production by 90% - resulting in a much more stable application, and a satisfied business team.  In addition to increasing reliability, this project had two tangible benefits to the engineering team:

  1. The engineering hours spent preparing for a release was reduced by 95%  - freeing developers to spend more time improving the product
  2. The frequency of releases was improved by 4x - monthly releases became weekly releases - ensuring features were consistently delivered to keep client satisfaction high

More customer success stories

Improving Applications with Embedded Analytics
Read Story
Enhanced Audio Analysis for Legal Case Work
Read Story
View all work