Part 1: The “Platform Gap”
Why do small teams need a platform?
Because without one, you are stuck in TicketOps.
- Dev: “Hey, I need a database for the new search feature.”
- Ops: “Okay, creating a ticket. I’ll Terraform it next week.”
- Dev: “Also, the staging environment is broken again.”
- Ops: “Yeah, I’m debugging the Nginx config. Don’t deploy until Thursday.”
This friction kills startups. The “Platform Gap” is the distance between a developer writing code and that code running in a live URL.
In big companies, the Platform Team builds a “Golden Path”—a self-service portal where devs click a button and get a database. In small companies, the “Golden Path” is usually a frantic Slack message to the CTO.
We need to close the gap. But we can’t afford the team. So we buy the stack.
Part 2: The Stack (The “Agency Build Farm”)
We call this architecture the “Agency Build Farm” because it was perfected by high-velocity dev agencies who ship 20 projects a year. They don’t have time to fiddle with AWS IAM roles for every client. They need a machine that turns code into deployments.
Here are the three pillars:
1. The Engine: K3s on Bare Metal
Stop trying to manage EKS (Elastic Kubernetes Service) for a small team. EKS is fantastic for massive scale, but it requires a dedicated engineer just to manage the VPCs, Subnets, and IAM policies.
K3s is Kubernetes stripped of the bloat. It is a single binary. It installs in 30 seconds.
By running it on a Hetzner Bare Metal server (e.g., AX102), you get raw power without the complexity tax.
2. The brain: GitLab CI (or GitHub Actions)
This is your orchestrator. It listens for git pushes. It runs tests. It builds Docker images. But crucially, it does not touch the production server.
*Wait, what?*
In the old “Push-Based” model, CI would run `kubectl apply`. This meant you had to give your CI server root access to your cluster. This is a security nightmare and a recipe for “config drift” (where the live server looks different than the git repo).
3. The Hands: ArgoCD (GitOps)
This is the secret weapon. ArgoCD lives inside your cluster. It watches a git repository. When it sees a change in the YAML files, it pulls them down and applies them.
- Dev: Commits a change to `deployment.yaml`.
- ArgoCD: “I see a change. Syncing.”
ArgoCD is your “Platform Engineer.” It works 24/7. It never forgets to apply a config map. It never accidentally deletes the wrong namespace. It ensures that Git is the Source of Truth.
Part 3: The “Golden Path” Workflow
Let’s walk through the day in the life of a developer on this stack.
Scenario: A developer needs to add a Redis cache to their service.
The Old Way (TicketOps):
1. Ask Ops for Redis.
2. Wait 3 days.
3. Get connection string.
4. Realize the firewall ports are blocked.
5. Wait 1 day.
The “Platform Stack” Way:
1. Developer opens `helm/values.yaml` in their repo.
2. Adds:
redis:
enabled: true
3. Git Commit & Push.
What happens automatically:
1. GitLab CI validates the YAML syntax.
2. ArgoCD detects the change in the Helm chart configuration.
3. ArgoCD talks to the K3s API: “Spin up a Redis pod in this namespace.”
4. K3s provisions the pod and creates the internal DNS service.
Total time: 5 minutes.
Human intervention: Zero.
This is the definition of Platform Engineering: Self-Service Infrastructure.
Part 4: Implementation Guide (Set this up in 4 hours)
You don’t need a year-long roadmap. You can build this on a Friday afternoon.
Step 1: The Hardware ($60/mo)
Rent a Hetzner AX52 (AMD Ryzen 7, 64GB RAM).
Install Ubuntu 24.04.
Step 2: The Cluster (10 minutes)
SSH into the server and run:
curl -sfL https://get.k3s.io | sh -
Copy the `/etc/rancher/k3s/k3s.yaml` to your local machine. You now have a cluster.
Step 3: The Platform (ArgoCD)
Install ArgoCD (the robot operator):
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
Step 4: The Connectivity (Cloudflared)
“But Sarah, how do I expose this securely without messing with firewalls?”
Use a Cloudflare Tunnel. It creates a secure outbound connection from your cluster to the internet. No open ports. No public IP management.
Deploy the `cloudflared` container in your cluster. Point `argocd.yourcompany.com` to it.
Now you have a secure, HTTPS-protected Platform Portal.
Part 5: The Economics of “Democratization”
Let’s look at the ROI of this stack versus the “Hire a Guy” model.
Option A: Hire a Platform Engineer
- Salary: $160,000
- Recruiting Fee: $30,000
- Onboarding: 3 months
- Total Year 1 Cost: ~$220,000
Option B: The “Agency Build Farm” Stack
- Hetzner Server: $720/year
- ArgoCD: Free (Open Source)
- GitLab: Free (Tier)
- Consultant to set it up (One-time): $5,000 (or do it yourself with this guide)
- Total Year 1 Cost: ~$6,000
Savings: $214,000.
But the real value isn’t the money saved. It’s the velocity gained.
When a team of 5 has the tools of a team of 50, they stop fighting infrastructure and start shipping product. They deploy 10 times a day instead of once a week. They fix bugs in minutes.
Conclusion: Complexity is a Choice
The biggest lie sold to small teams is that “simple is bad.” That if you aren’t using a multi-region, active-active, service-mesh-enabled AWS architecture, you aren’t “serious.”
Complexity is not a badge of honor. It is a tax on your velocity.
Platform Engineering, at its core, is about reducing cognitive load. It is about letting your developers write code without needing to understand how a VPC peering connection works.
You can achieve this with a team of 20 engineers building custom tools.
Or you can achieve it with a single $60 server and three open-source tools that were designed to work together.
You don’t need a Platform Team. You just need a Platform.
*Ready to deploy your own Platform Stack? We’ve open-sourced our “Agency Build Farm” Terraform & Helm templates. It includes the K3s config, ArgoCD setup, and a sample “Golden Path” application. Clone it here.*
Ready to see your savings? Our Cloud Exit Calculator compares AWS vs Hetzner in 30 seconds. Or get an Infrastructure Audit ($495) for a migration blueprint.
Curious about your potential savings?
Most teams save 40–60% on cloud compute. Use our free calculator to see exactly how much you could save.













