Choosing the right cloud service provider for your startups

Kamalmeet Singh
4 min readOct 16, 2023

--

Selecting the appropriate cloud service provider is crucial for a startup during its early stages because it significantly influences various factors such as expenses, reliability, the ease of introducing new features, scalability, vendor dependence, and more.

https://unsplash.com/photos/Am6pBe2FpJw

Please bear in mind that I am specifically addressing startups in their initial development and deployment phase, as the challenges and advantages may vary for larger companies. For example, if you are already established company, you might be exploring options like a multi-cloud approach, compatibility with your current on-premises cloud, you have enhanced bargaining leverage with vendors, and so forth as you work to determine the ideal cloud service provider.

Let’s focus on Startups in this post.

Understanding the Application-Specific Requirements from Cloud

Before you make a decision, it’s crucial to grasp the project-specific requirements. In essence, you should examine the existing design and, if feasible, anticipate future design needs.

This analysis will enable you to pose the pertinent questions, such as: Is it logical to establish and maintain components independently, or would it be wiser to opt for off-the-shelf solutions? How much process automation is justifiable in terms of cost and effort, both presently and how might this evolve in the future?

A common set of requirements would typically mean choosing from the following services

  • Virtual Machines
  • Containerization- Kubernetes/ Pods
  • Database
  • Storage
  • Serverless / Functions
  • Cron Jobs
  • API Gateway
  • Observability — Logging and Monitoring
  • Analytics
  • Machine Learning
  • Elastic Search
  • Messaging- Kafka
  • Mobile- SMS or notifications

Explore Cloud Options available

Most popular cloud vendors at this point provide quite competitive features and pricing. But still, you would like to confirm if you have any specific requirement for your project. Some of the areas you should be focusing on

  • Does my application need data to be stored in a specific region or country?
  • Do I need a specific compliance certification?
  • Does my application need to be hosted in a particular region because my audience is in a specific area?
  • Does my team already have expertise in a specific cloud? How easy will it be able to learn the skills or hire the experts?
  • Is the current solution implementation easily scalable?
  • Does the solution cause a vendor lock-in situation? i.e. are we choosing a solution option that is provided by a specific cloud service provider and is difficult to move?

In addition, if you are a startup, you would like to explore special options provided by most cloud service providers. Here are a link to a few

AWS: https://aws.amazon.com/startups/credits#hero

GCP: https://cloud.google.com/startup/

Azure: https://www.microsoft.com/en-us/startups/

Cost Calculators

AWS: https://calculator.aws/#/estimate

Azure: https://azure.microsoft.com/en-in/pricing/calculator/

GCP: https://cloud.google.com/products/calculator

Evaluating the Options and Finalizing

After determining the critical aspects for our project, it becomes more straightforward to evaluate these elements by investigating the available cloud provider solutions. Another aspect to take into account is how these factors will unfold in the long term. For instance, the current cost may be low with a particular cloud provider, but how will it change in a year, two years, or five years, as the scale expands and new features are introduced? You might not be initially considering Machine Learning or Blockchain features, but if you decide to incorporate them, how will it influence your decision??


+----------------------+-------------+-----------------+------------+
| Feature | Amazon AWS | Microsoft Azure | Google GCP |
+----------------------+-------------+-----------------+------------+
| Cost- Near Term | Cost | Cost | Cost |
| Cost- Long Term | Cost | Cost | Cost |
| Features- Near Term | Availablity | Availablity | Availablity|
| Features- Long Term | Availablity | Availablity | Availablity|
| Skill Set- Near Term | Complexity | Complexity | Complexity |
| Skill Set- Long Term | Complexity | Complexity | Complexity |
+----------------------+-------------+-----------------+------------+

Case Study

Let's consider a three-tier application that has frontend, backend, database, and storage requirements.

Frontend: Can be deployed on a VM with 2GB RAM and 4 Core CPU

Backend: Can be deployed on a VM with 4GB RAM and 4 Core CPU

Database: Postgres that can support 30 GB data, 1000 R/W operations per minute

Storage: 100 GB media storage with 500 I/O per minute

Please note following table is hypothetical

+----------------------+-------------+-----------------+------------+
| Feature | Amazon AWS | Microsoft Azure | Google GCP |
+----------------------+-------------+-----------------+------------+
| Cost- Near Term | 180/month | 200/m | 210/m |
| Cost- Long Term | 400/m | 380/m | 410/m |
| Features- Near Term | Available | Available | Available |
| Features- Long Term | Available | Available. | Available. |
| Learning - Near Term | Easy | Easy | Medium |
| Learning - Long Term | Medium | Medium | Medium. |
+----------------------+-------------+-----------------+------------+

Conclusion

Selecting the appropriate cloud service provider during a startup’s initial phase is a critical decision. The more invested you become in a service provider, the more challenging it becomes to transition or switch to another. It’s not just about comprehending your current requirements; it’s also about envisioning how they might evolve in the future. Consider what new features you intend to introduce and how they will impact your existing choices.

To ensure you make informed decisions, it’s advisable to create a detailed architectural diagram for your current system, as well as any expected future changes. Once you have this information, evaluate against the targeted cloud vendors in terms of cost, features, expertise, etc. The more comprehensive this analysis is, the better equipped you’ll be to make the right choices.

--

--

Kamalmeet Singh

Tech Leader - Building scalable, secured, cloud-native, state of the art software products | Mentor | Author of 3 tech books |