Major Wholesaler Grows Uptime by Refactoring eComm Apps for AWS DevOps
- January 27, 2020
A recent IDC survey of Fortune 1000 found that the average cost of an infrastructure failure is $100,000 per hour and the average total cost of unplanned application downtime per year is between $1.25 billion and $2.5 billion. Our most recent customer relies heavily on its eCommerce site for business and knowing the extreme costs of infrastructure failure to its business, turned to the benefits of cloud-based DevOps. The firm sought to increase uptime, scalability, and security for its eCommerce applications by refactoring them for AWS DevOps.
What is refactoring?
Refactoring involves an advanced process of re-architecting and often re-coding some portion of an existing application to take advantage of cloud-native frameworks and functionality. While this approach can be time-consuming and resource-intensive, it offers low monthly cloud spend as organizations that refactor are able to modify their applications and infrastructure to take full advantage of cloud-native features and thereby maximize operational cost efficiencies in the cloud.
Refactoring eCommerce applications for AWS DevOps
The team’s first goal was to architect and build a DevOps platform solution, with applications architected for high availability at all levels in order to meet the company’s aggressive SLA goals. Here, the first step was to build a common DevOps platform for the company’s eCommerce applications and migrate the underlying technology to a common stack consisting of ECS, CloudFormation, and GoCD, an open-source build and release tool from ThoughtWorks. (In the process, the team migrated one of the two applications from Kubernetes and Terraform to the new technology stack.)
As business-critical applications for the future of the retailer, the eCommerce applications needed to provide greater uptime scalability and data security than the legacy, on-premises applications from which they were refactored. As a result, our team built a CI/CD platform using AWS DevOps best practices, effectively reducing manual tasks and thereby increasing the team’s ability to focus on strategic work.
Further, our team worked alongside the retailer’s team to:
- Migrate the refactored applications to new AWS Accounts using the new CI/CD platform;
- Automate remediation, recovering from failures faster;
- Create AWS Identity and Access Management (IaM) resources as infrastructure as code (IaC);
- Deliver the new applications in a Docker container-based microservices environment;
- Deploy CloudWatch and Splunk for security and log management; and
- Create DR procedures for the new applications to further ensure uptime and availability.
Moving forward, application updates will be rolled out via a blue-green deployment process that we helped the firm establish in order to achieve its zero downtime goals.
While the customer team is a very advanced developer team, they were able to further their skills, learning through knowledge transfer sessions on how to enable DevOps best practices and continue to accelerate the new AWS DevOps platform adoption. At an estimated downtime cost of 6x the industry average, this firm couldn’t withstand the financial or reputational impact of a downtime event. As a result, the team is happy to report that it is meeting its zero downtime SLA objectives, enabling continuous system availability and growing customer satisfaction.
*This was originally written by Flux7 Inc., which has become Flux7, an NTT DATA Services Company as of December 30, 2019