We love to copy the end-states but not the journeys. There are stellar examples of companies that have used technology to grow business exponentially, also referred to as Blitzscaling using Technology.
Below are some mental models for thinking through as you scale the technology aspects of your startup as an engineering leader. Below are my on-the-job experiences where I have resisted replicating the end states on Day 1 and instead focused on putting the Tech stack in the right direction which can then be scaled up.
Stacking up using SaaS
Clearly “Achieving More with Less” is the currency and it’s here to stay. You will always face the question of “Build vs Buy” or using outside contractors to build a certain part of your product via a contractual workforce. Here are a few ways to think about it.
Be extremely voracious in the general know-how of SaaS companies. The ecosystem is exploding with Plug & Play companies like Video as a Service, Search As a Service, Data as a Service etc. Choosing and bringing along the right partner is extremely important, a right partner can be a drag or a boon! My understanding is that very soon, you would see more successful examples of architectures built by stacking up different SaaS offerings. The 2 key decisions points will always be :
Go to Market aka Speed of Integration.
How core is the component for your business’s success? For example: For an e-commerce company, it’s prudent to use an externalized identity while it is very critical to evolve Discovery, Pricing, and other revenue levers.
Look for references - You will most likely have limited time to make a decision on a partner. Due diligence sometimes is not enough, look for references from your peer group about the partner, and don’t hesitate to reach out and ask for challenges and experiences via your network.
Ubiquitous Data
Strategy for data and making it consistent, and omnipresent, and having the infrastructure to convert data into insights is paramount. In a fast-moving startup, there will be many business functions running hard to grow the business, creating a data lake platform to provide insights, cross insights are the key. My experience in creating a data lake from 0-1 has been the following :
Plan & aim for a self-help platform where reports, derivations, and insights are available with individual businesses w/ as minimal dependency on your technology team. A team of analysts should be able to query data across businesses and across platforms with ease.
With ML algorithms driving the revenue, and growth numbers it is key to get the data platform right since it acts as a foundational component for subsequent ML Ops and experimentation strategy.
After extensive research, I have leaned towards building a data-lake in house. My conviction is that in most companies data plays such a pivotal role in business growth that evolving this strategy with the growth of the company makes more sense. TCO for an external data lake provider also plays a very important role in this decision!
Site Reliability Engineering ( aka DevOps )
At scale , cloud bill becomes the biggest expense of your Tech organisation. It is important to understand the line items of the cloud bill. More often than not it starts with :
Un-optimised Databases - necessary for vertical scaling of a monolith.
Data transfer costs due to inra topology.
Lack of scalable testing infrastructure.
Once your architecture evolves to microservices you will have to evaluate the containersiation strategy. If you are evolving from a monolith , would you directly hop onto something like Kubernetes ( K8s ) or would you have a hop on to ECS ( or equivalent in other cloud providers
) while you dockerise all your code. This decision is going to be subjective to the size of your engineering team and its appetite to pick up Scale related improvements at any given point of time!
Again , since this line item involves cost and is directly proportional to your tech stacks ability to scale, my experience has been to develop this skillset in-house.
Developer Productivity resulting due to interactions between Engineers & SRE team for things like Infra creation , access to infra , monitoring requests etc is also a key point while taking the journey of evolving your SRE team!
Above are a few mental models that could help you make faster and bolder decisions as an Engineering Leader. Keep sharing the stories of your journey too. If you want to brainstorm on any of the Engineering related topics like choice of Tech , hiring , scaling up the engineering culture, feel free to hit me up using any of the methods below or book a slot using the calendly link on this page LinkTree.