We will still need to develop a fully mature and scalable infrastructure when launching a product. For the initial user acquisition stage, it’s critical to closely align DevOps and Operations on how many pilot users are planned for the first run and prepare the accordingly needed infrastructure to support them. Failing to plan, like running in a Staging environment, will lead to preventable problems occurring, which have nothing to do with the value proposition but just poor infrastructure planning. This needs to be avoided.
Good infrastructure planning enables a good experience for the initial users so that they can focus on actually using and giving feedback on the product’s key features and value proposition rather than problems that occur because the workloads overwhelm the system.
Whenever we launch a service to genuine customers, we should adequately plan out the infrastructure requirements so that they will have a good experience with the product.
Before the initial launch of a production environment to the first customers, convene a meeting with DevOps and Business.
Align the targets and phases of the launch and phase-in. How many users are we expecting over which periods of time? When will we increase numbers? What interactions do we expect from them?
Draw necessary conclusions on the architecture of the initial launch systems in teams of, e.g., CDNs, servers, databases, etc., to ensure that the likely workloads can be met properly.
Err on the side of caution when estimating peak workloads. Ensure that even if all test users, and a few more, were to interact at the highest rate possible, the system could handle it.
Do think about geographic spread - the location of servers and CDNs can matter, depending on the countries we are looking to cover.
Don't
Don’t run the first customers on your staging environment. Ensure a proper production environment is ready.
Don’t try to optimise every dollar for this first phase; instead, have a stable setup than pinching the cents and seeing the system underperform.