But there is one last approach to cover, what if you do not run things at all? This is what's called Software as a Service (SaaS), you simply use services. You no longer pay for servers or licenses, you only pay for the service.
In my head most clear examples of this approach are:
- Google's Gmail & Workspace
- Microsoft has now moved with Office to the cloud as well
- Slack seems the leader in IM communication
- Salesforce is the cloud CRM leader
- In customer service Hubspot is a strong solution
- Mailchimp has a very strong presence in email marketing
- Shopify will host your e-commerce
This is just a very brief list of the offerings you have available, there are many more and the list grows continuously.
So I guess the question goes, why do I bother hosting my own infrastructure when I can use it as a service? These are a couple of questions you can ask yourself to decide:
- How many users do I have?: This is an important question, most services charge per user. So if you do not have a big user base, it is likely it will be less expensive to consume services.
- Do I have devOps knowledge and skills within my company?: If you do not really need to have this knowledge or ability within your company, chances are you would be better consuming services.
- How much control do you need over your tools and data?: When you use a SaaS you have an agreement which will protect your data, but in some situations there is no easy way to migrate from one service to the other.
- Can I use out of the box solutions or do I need some kind of customizations?: Most SaaS solutions will have a limited or none capacity for customizations.
Unless you have a specific need and/or have lots of users, SaaS solutions will probably be your best option. It will keep your costs within a budget, will solve lots for you and will allow you to grow seamlessly. Worse case scenario you can migrate from a SaaS to a hosted solution as your needs change.
So even though it is the last cloud approach I'm covering, it might be your first and best option. With it you lose control, you might get locked to a vendor, but you free yourself from lots of hassle and you are likely to reduce your costs.
Even though I covered the list I originally presented, as I wrote these articles I realized two things I’m missing which I think are worth mentioning when thinking about cloud solutions today: Kubernetes & Terraform. I plan to write two more articles discussing their possibilities.