Ksenia Nikolaenko | September 13th, 2023
In today’s fast-paced digital landscape, a forward-thinking California-based company set out to revolutionize personal connections through virtual interactions. Their aim was to create a cutting-edge online event booking platform tailored for individuals seeking genuine, meaningful relationships. However, beneath the surface of this ambitious goal, a web of intricate infrastructure challenges emerged, posing significant hurdles to their progress.
Our client is a company headquartered in East Los Angeles, United States, with an annual revenue of $2.2 million.
They maintain a significant online presence, attracting an average of 180,000 website visitors in the last month. However, they faced a challenge with a 55% bounce rate on their website, and their user base exhibited an interesting geographical distribution, with 57% of users originating from Australia and 22% from the United States
Initially, the company’s infrastructure consisted only of development and production environments, both configured manually through the AWS UI. This setup lacked a crucial intermediary: a staging environment for rigorous testing of new features.
Mindset Shift: Recognizing the Value of Staging Here, the first mindset shift occurred. Developing a staging environment (a replica of the production environment) wasn't a luxury but a necessity. It allowed the business to test new features and changes rigorously before reaching end-users.
Over time, some infrastructure resources became outdated and irreplaceable, causing operational inefficiencies and bottlenecks. Attempting to upgrade these resources proved challenging.
Mindset Shift: Embracing Infrastructure as Code (IaaC) The second shift involved adopting Terraform, a tool for automating infrastructure provisioning. Terraform allowed for quick and scalable changes, eliminating the need for manual intervention and transforming the way the company managed its infrastructure.
In just two months, a dedicated team brought all microservices infrastructure to life, consisting of 40 applications in ECS containers and 35 Lambda functions. However, some applications faced issues due to hardcoded configurations.
Over the next four months, the team prepared Terraform code and configuration files to create an identical staging environment. This was the pivotal step in their journey.
For several more months, the company’s developers worked closely with Terraform experts to resolve issues and ensure a smooth transition.
Mindset Shift: Taking Ownership They also initiated the shift towards ownership. While Terraform experts were always available for support, the company's team began making minor code adjustments themselves.
Even after the project’s completion, periodic discussions were held to reinforce the IaaC concept. A list of recommendations for further improvements was provided.
Finally, the company’s QA team tested the new staging environment and gave their approval.
Today, scaling the company’s infrastructure is a breeze. Modifying Terraform configuration files allows them to adapt swiftly to changing demands.
Introducing new services on their staging environment now takes a mere 15 minutes, compared to the days it used to consume. This journey showcases the power of Terraform in transforming manual infrastructure into a flexible, scalable, and efficient system.
Are you facing similar challenges with your infrastructure? Let’s start a conversation and explore how our development team can empower your business, just as we did for this client!
Contact us today to discuss your project and see how we can help bring your vision to life. To learn about our team and expertise, visit our ‘About Us‘ webpage.