For a moment, everything was going to plan. You launched successfully, slowly gained some visibility, earned the confidence of users and people loved your product.
As your popularity grew, you experienced your first major growth spurt and entered the oh-so dreaded scale-up phase. With the excitement and adrenaline that it creates also comes a whole new set of challenges.
According to the Startup Genome Report, 74 percent of high-growth start-ups failed due to unproper scaling. Fortunately, you can learn from the mistakes of the ones who ventured out before you and be better prepared.
To illustrate dos and don’ts we will use the case of a booming fresh start-up.
Context and Challenges
Our client has developed an innovative and attractive collaborative subscription service available via a web platform. Users were coming in slowly but steadily until a communication campaign on a large television channel made the user base explode, and the infrastructure with it.
The startup began to struggle keeping up with the increasing demand and the spikes of new users. With the website crashing or slowing at snail pace, the conversion rate of visitors dropped dramatically. Instead of rejoicing and taking advantage of the momentum they ended up firefighting to keep the platform standing.
Our Approach
Positive Thinking Company was involved on the customer’s request to make a diagnosis of the situation of the infrastructure and propose solutions to remedy the problems.
The audit took place in two phases:
1. Assessment input on the key activities (People, Technology and Processes)
This first phase consisted in asking the customer’s technical point of contact high-level questions to get an overview of the situation on the following points:
- Total number of users
- Total traffic in one day
- Peak usage periods
- Problems arising during those peaks
Our experts then drilled down by asking specific questions on the three above-mentioned pillars.
- People: communication between infrastructure and development teams, number of people with cloud knowledge and number of able to acquire some, change management, and cloud mindset
- Technology: Number of servers and ways in which they are organized, composition of the technical stack, usage of third-party services
- Processes: Release process, backup process, DRP
2. Assessment output: cloud strategy document
For each problem, we assigned a solution and rendered our conclusions in a report to the customer. The goal was to address the lack of cloud maturity and infrastructure resiliency.
In addition to these solutions, we proposed a progressive migration plan (IaaS to PaaS) in several steps to put those into action.
- 1st step: Operate a lift and shift of the current infrastructure to AWS
- 2nd step: Use AWS aws managed services for third parties that do no require intervention on code (ie: databases)
- 3rd step: Rewrite the application to fully benefit from AWS managed services (i.e.: cloud storage, event queue system, migrating jobs, on demand code to serverless)
The Benefits
Now armed with a ready-to-go roadmap, the customer followed the recommendations while being assisted by our cloud experts, allowing them to absorb knowledge and, above all:
- Automate deployments using Continuous Integration
- Reduce maintenance time
- Increase the availability and resilience of their infrastructure
- Reduce their operational costs