How we built The SaaS product with microVm
Initial Struggle after Graduation
After finishing my internship and completing college around June 2024, I entered the “apply → wait → rejection” loop. I was aiming for DevOps roles, but every job description demanded deep specialization, certifications, and industry-level experience. With no real industry exposure, almost no one shortlisted me.
But I kept studying — AWS, Proxmox, LXC containers, and Linux internals. At the same time, I was procrastinating applying for jobs because somewhere inside, I felt I wasn’t “ready enough.”
Before I realized it, six months had passed. It was January 2025. A new year… and I was still jobless.
Frustration peaked.
That’s when I told myself:
“Forget it. I’ll build my own mini-AWS. A full project. Something I can actually show recruiters. And if no company hires me… I’ll make this real myself.”
Redefining the Dream
I started redesigning my old project idea and simultaneously went deeper into the real core tools every DevOps engineer needs — Linux, Terraform, Ansible, AWS, networking, everything.
I first thought of using Proxmox as the hypervisor. But I kept researching to see what the industry standard really looked like.
That’s when I discovered OpenStack and OpenShift.
And my reaction was literally:
“Damn… this is exactly what I need.”
So I spent the next month learning the fundamentals of both. My plan was ambitious:
- Install OpenStack on my local PC.
- Use its APIs for VM lifecycle, networking, EIPs, security groups, etc.
- Create a VM inside OpenStack.
- Install OpenShift on that VM for Kubernetes workloads.
- Upgrade my Node.js API so it could talk to both OpenStack and OpenShift.
It was tough. Huge systems. Massive documentation. Errors everywhere — API failures, CloudInit issues, broken networking, you name it.
But after a lot of trial, error, and frustration… I managed to get a manual setup working.
Then I expanded the idea:
“Let’s integrate Kubernetes + Ansible as well, so in the future we can build a smooth CI/CD pipeline.”
And all of this brought me to May 2025.
Reality Check
While working on this massive architecture, I was also applying for jobs. But the same question kept hitting me:
“How will I even host this? A decent server costs at least ₹10 lakh. I’m building everything on my PC. I don’t even have proper internet to host real clients.”
No job.
No money.
Huge project.
No clear path forward.
So I paused the idea.
For the next two months, I focused only on the fundamentals — AWS, Terraform, Ansible, Linux, Git… and kept applying for jobs.
Still nothing.
By July 2024, the panic started again.
The Turning Point — Firecracker
Around this time, I cleared the Solutions Architect Associate exam. This gave me a big confidence boost.
I still wanted to build a mini-AWS. This dream had been with me for almost 2–3 years.
Then I had a crazy thought:
“What if I host it on AWS itself? But AWS is so expensive… I need something cheap.”
While researching AWS Lambda, I had a realization:
AWS obviously doesn’t run Lambda functions inside Docker containers directly on bare servers — security would be a nightmare.
So how are they running and destroying environments so fast?
That’s when I learned about Firecracker — Amazon’s open-source microVM technology built specifically for Lambda.
Mind blown.
I loved the concept instantly.
Firecracker creates super lightweight VMs with their own stripped-down OS + kernel. Inside those VMs, AWS runs user workloads securely in isolation.
Then I discovered that many companies were using Firecracker + containerd to give users isolated Docker environments safely — because each Docker runs inside its own microVM.
Exaple platforms : Weave Ignite, Fly.io, Coder, etc.
And then my idea clicked:
“Where everyone else gives containers inside microVMs… I will give microVMs themselves to users.”
They are cheap, extremely lightweight, secure, fast to create/destroy — perfect for a cloud product.
Then I found Flintlock, a tool for managing Firecracker microVMs in a cloud-native way.
And everything finally made sense.
Bringing It All Together
So I built the architecture:
- Flintlock for provisioning microVMs
- containerd + Firecracker as the VM runtime
- A custom API FastAPI to manage everything
- Frontend connected to our microVM orchestration API
- Terraform for provisioning EC2 hosts where Flintlock runs
- Ansible for updates, patches, and configuration
- K3s integrated for lightweight container orchestration
- Everything deployed on AWS, clean, automated, and scalable
And that system became our SaaS product — the mini cloud platform I had always wanted to build.
From being jobless and frustrated…
to building something I once thought only big companies like AWS could build…
This is how our product was born. 🔥