How I learned this the hard way
My first two products were completely hosted on-premise.
Long deployment times? I thought that was normal.
A group of people coordinating like a full concert just to push a release? Normal.
Ops team spending a week on a staging issue? Normal.
Then I saw a different team operate. And honestly? I got jealous.
One developer. Small internal web app. Hosted on cloud. Deployed in a single click.
I was like: wait, what is this world?
That moment I internalized the differences.
Why it matters for PMs
You might be thinking: this sounds too technical. Can't I just leave it to engineering?
You could. But if you fully outsource it, you also outsource decisions that directly impact your product.
Decisions like:
- Build vs. buy
- Time to market
- Scalability and reliability
- Costs
- Security and compliance
- Speed of experimentation
You might not be the one setting this up. But you need to understand the trade-offs.
Let's use one analogy throughout: apartments
Each cloud model is a different version of finding a place to live.
Same goal. Very different trade-offs.
On-Premise: Buying the apartment
You find a place on the market and decide to buy it.
You own everything. The walls, the plumbing, the roof.
Full control. But you're also responsible for everything: renovations, repairs, furnishing. Plumbing breaks at midnight? That's your problem.
This is on-premise. Your company owns the physical servers. You manage the infrastructure, the upgrades, the security patches, the capacity planning.
What this means for you:
→ High control: you own the servers and decide everything
→ High cost: not just hardware, but the people who support, patch, and deploy
→ High customization possible
→ Hard to scale: need more capacity? Buy more servers. Need less? Now what?
→ Long lead times for any change
This is where I started. And yes, it explains a lot about those deployment marathons.
IaaS: Renting an empty apartment
Same apartment. But this time you rent it.
The building is there. Walls, windows, plumbing, electricity. The landlord (your cloud provider) keeps the structure running.
But the apartment is completely empty.
No furniture. No kitchen. Not even a lightbulb.
You set everything up yourself. The OS, the runtime, the middleware. You bring everything inside.
More flexibility than on-prem. But you're still managing a lot.
What this means for you:
→ Provider manages: physical hardware and virtualization
→ You manage: OS, runtime, middleware, applications, data
→ Easier to scale than owning physical servers
→ Still requires a capable technical team
Common examples: AWS EC2, Azure Virtual Machines, Google Compute Engine
PaaS: Renting a furnished apartment
Now we're getting somewhere.
This apartment comes with a kitchen. Countertops, a stove, a fitted bathroom.
Some basic furniture is already in place.
You don't have to think about any of that. You move in and focus on what actually matters to you: what to cook, how to make it yours.
In PaaS, the cloud provider handles the infrastructure and platform layer. OS, runtime, middleware. All taken care of.
Your team focuses on building and deploying the application itself. Not on managing what it runs on.
What this means for you:
→ Provider manages: hardware, OS, runtime, middleware
→ You manage: your application and your data
→ Faster to get started: much less infrastructure overhead
→ Great for internal tools where speed matters
Common examples: Azure App Service, Google App Engine, Heroku
SaaS: Moving into a furnished business apartment
Think of a serviced residence. The kind that looks like a nice hotel.
Everything is already set up. Furniture, appliances, Wi-Fi, cleaning service.
You show up with your suitcase and you're done.
You have no idea what brand of water heater is in the walls. You don't need to.
You just use it.
The provider manages everything: infrastructure, platform, the application itself. You log in and use the product.
Least control. Least overhead. And for many use cases, that's exactly what you want.
What this means for you:
→ Provider manages: everything
→ You manage: your data and how you configure the tool
→ Zero infrastructure work
→ Fast to adopt, easy to scale up or down
→ Less customization, but you're buying a solution, not building one
Common examples: Salesforce, Microsoft 365, Jira, Notion. Basically every tool you already use.
The full picture
Here's how all four models compare at a glance.
The more control you want, the more you manage. The less you want to manage, the faster you move.
All three major cloud providers offer free beginner-level training. Any of these is worth an afternoon.
- Microsoft Azure: Describe cloud computing (part of the AZ-900 fundamentals path)
- AWS Cloud Practitioner Essentials (free on AWS Skill Builder)
- Google Cloud: Cloud Infrastructure fundamentals (free intro path)
- Cloudflare Learning Center (no sign-up needed, great quick reads)
You don't need to finish a full certification. Even the first module of any of these will make your next architecture conversation feel very different.