Everything “as a Service”: Making Sense of the Cloud
Understanding SaaS, PaaS, IaaS, and FaaS—and the problems they solve.

If you've spent any time around cloud computing, you've probably noticed how often the words “as a Service” come up.
Something as a Service. Something else as a Service. And usually, there's an acronym to go with it.
So what do they actually mean?
Let's look at the problem each one solves, what you manage, and what the provider manages for you.
First, what does “as a Service” mean?
At its core, “as a Service” means that instead of owning, building, or managing something yourself, a provider offers it to you as something you can use.
Think about email.
A company could build its own email application, run the servers behind it, store all the messages, maintain the software, handle security updates, and keep everything available. Or it could simply use Gmail, while Google takes care of most of what is required to make the email service work.
Cloud service models apply this same idea at different levels.
IaaS — Infrastructure as a Service
Your application needs a computer somewhere to run on.
Traditionally, that could mean buying a physical server, finding somewhere to keep it, connecting it to the network, maintaining it, replacing hardware when it fails, and buying more servers when you need more capacity.
But what if you could simply rent the computing infrastructure you need?
That's essentially Infrastructure as a Service (IaaS). Instead of owning the physical machines, you get computing resources from a cloud provider.
With Infrastructure as a Service, your cloud provider allows you to create virtual machines to run your applications. The provider takes care of the physical hardware, while you still manage the operating system, installed software, and your application.
In plain English: give me a computer to run my stuff on without making me own the physical computer.
On AWS, Amazon EC2 is an IaaS offering. On Google Cloud, Compute Engine fills a similar role.
PaaS — Platform as a Service
IaaS saves you from owning the physical infrastructure. But what if you don't want to manage the virtual machine either?
Maybe what you really want to say is: Here's my application. Please run it.
That's the basic idea behind Platform as a Service (PaaS).
With PaaS, you deploy your application while the platform takes care of much of what is required to run it. You don't need to start by creating a server, installing an operating system, configuring a web server, and setting up all the infrastructure yourself.
A classic example is Heroku: you deploy your application, and Heroku takes care of much of what is needed to run it.
The same idea exists within the major cloud providers. Elastic Beanstalk is an AWS PaaS offering, while App Engine provides a PaaS option on Google Cloud.
In plain English: here's my application—run it for me.
FaaS — Function as a Service
Sometimes you don't need an entire application running all the time. You have a piece of code that only needs to run when something happens.
For example:
An email is received → process it.
A photo is uploaded → resize it.
A user signs up → send a welcome email.
A payment is completed → generate a receipt.
In other words, you want the cloud to perform an action on your behalf when something happens.
You could keep a server running all day waiting for one of these events. Or you could simply say: when this happens, run this function.
That's the basic idea behind Function as a Service (FaaS).
With FaaS, you provide the function and the cloud provider takes care of the infrastructure needed to run it. You don't choose a server or keep one running yourself. You focus primarily on the code you want to execute.
This approach is commonly known as serverless computing. Serverless doesn't mean there are no servers. There are—you're simply not responsible for managing them.
💡 Tip: FaaS is one form of serverless computing, but serverless is a broader term that includes other types of cloud services as well. We'll explore that distinction in a future article.
On AWS, Lambda is a FaaS offering. On Google Cloud, Cloud Run functions provides this capability.
In plain English: when this happens, run this code for me.
SaaS — Software as a Service
What if you don't want to manage the infrastructure, deploy an application, or write the code? You just want to use the software.
That's Software as a Service (SaaS).
With SaaS, someone else builds, hosts, and operates the software. You simply access and use it.
Gmail is a good example. You don't need to build an email application, maintain an email server, or worry about the infrastructure behind it. You simply use Gmail while Google takes care of running and maintaining it.
The same is true of products like Slack, Dropbox, Salesforce, and many of the software tools we use every day.
SaaS is commonly subscription-based. You might pay for the subscription yourself, or your company might pay for it and give you access.
💡 Tip: Subscription is common, but it's not what makes software SaaS. SaaS can also be free.
💡 Tip: Installing software on your device doesn't mean it isn't SaaS. Slack, for example, is still SaaS when you use its desktop or mobile app. The installed app is simply one way to access the software that Slack hosts and operates.
In plain English: I just want to use the software. Someone else takes care of running it.
Cloud “as a Service” at a Glance
If you want a quick way to remember how these models differ, think about how much you're responsible for managing versus how much the provider manages for you.
Final Thoughts
The next time you encounter another “as a Service,” try asking:
What problem does it solve? What is being provided? And what will I be responsible for managing?
Answering those questions can make the acronym much easier to understand—and remember.



