SaaS on Cloud vs SaaS on Datacenter
Summer 2014 Greetings!
This blog is based on my direct experience of building both SaaS on AWS and SaaS on Datacenter.Datacenter: Rent a floor space from someone like CoreSite
Cloud: Rent IaaS from someone like AWS
It is important to understand the key difference between these 2 approaches. There are pros and cons for each approaches. My suggestion is to build SaaS on Cloud first until there is a product/market fit. So I will be biased for SaaS on Cloud in this discussion!
SaaS on Datacenter
It is a natural thinking to control the full fabric but reality is hard, if we have to build a SaaS on Datacenter from get-go. This is an old-school architecture and hard labor.- How much Investment?
- We are looking at few million $'s, at least a million to start with...
- On top of $, time and energy needed to get a datacenter operational is not an easy task especially for new SaaS startups.
- Instead of focusing on building business logic, we will be worrying about summer heat impact on server cooling OR harsh winter snow storm on complete power outages!
- How many Datacenters?
- It's a global world. We can't build datacenters around the world based on customer demand!
- Even more important is that we may not even know how many we need until we start acquiring customers
- If we keep US-only OR Europe-only, network latency will kill the applications for rest of the world
- Where to Start?
- We will be quickly overwhelmed with dealing with many vendors(server/storage/network), ISPs, DNS issues, hiring system administrators, managing local data/privacy laws, etc
- Operations engineering will front end software engineering and product focus will get lost!
Trust me, operations engineering is harder than software engineering! SaaS is a distributed system and if the underlying infrastructure is not stable, the entire system will fall apart quickly! Speak to guys who have dealt with production cloud services (Amazon.com, LinkedIn, Salesforce, etc) and they will tell you the stories/nightmares!
Having said all of them, you can think about this approach when your SaaS revenue reaches $30M/year. Then it will make sense to control full fabric and lower cost.
Having said all of them, you can think about this approach when your SaaS revenue reaches $30M/year. Then it will make sense to control full fabric and lower cost.
SaaS on Cloud
There is no question that we will depended on cloud providers for stability, performance and availability. It is important to establish right relationships before committing to build product on top of it. "Cloud-neutral" is hard but should be the mantra for your SaaS architecture.
- Where to Start?
- AWS (simple)
- There are other choices: Azure, Google Cloud, IBM Softlayer, Rackspace, Century Link, etc. Just take a look at this Gartner cloud magic quadrant for May 2014.
- Talk to folks in your network who have done it! Don't assume anything and you will be surprised about how hard it is to run a cloud service 24/7. (technical advisory board is recommended)
- How many Cloud-Datacenters?
- 3 for sure (North America, Europe and Asia)
- You can add more if data privacy becomes an issue (like China or Europe)
- Multiple cloud vendors is recommended only for 1.0 product release
- How much Investment?
- $5K/month/POD (POD: single instance of complete application with a unique URL)
- This is for high end SaaS in AWS. You can reduce it. Do not have to worry about hiring big operations team, data backup/recovery, etc.
- Scale cloud-cost only based on business demand. (auto scale is your friend)
Buy a big world map and put it on the wall. Put the engineering person on the left and product person on the right. Start circling cities on the map to identify potential users of your SaaS. You will quickly realize that it's a small market, no matter what you told your investors!
Then you will realize that your potential customers are spread around the world! So "SaaS on Cloud" is not only handy but also will make you smart in your board room discussions :-)
Then you will realize that your potential customers are spread around the world! So "SaaS on Cloud" is not only handy but also will make you smart in your board room discussions :-)
Summary
The clouds are like beaches! If you go to the beach on Friday afternoon, it will be empty and clean. But on Saturday morning it will be dirty and crowded. The cloud vendors are multi-tenant and are sharing resources. You will face this problem and will notice it when there is an event like the FIFA World Cup or Thanksgiving holidays. Then there is mother nature like this one. Plan ahead. Keep an eye on world events and mother nature.
I had a good experience with AWS California region in terms of stability. It is not crowded and not much problem with heat or cold. But if there is a big earthquake then it is a different story!
The summary is that start with SaaS on Cloud and move to SaaS on Datacenter if needed. Have fun in building next Workday or Ciespace or Netsuite! Reach out to me if you need more wisdom.
I had a good experience with AWS California region in terms of stability. It is not crowded and not much problem with heat or cold. But if there is a big earthquake then it is a different story!
The summary is that start with SaaS on Cloud and move to SaaS on Datacenter if needed. Have fun in building next Workday or Ciespace or Netsuite! Reach out to me if you need more wisdom.
Note: IaaS vs PaaS is for another blog.