Blog
Notes from building and running Kubernetes, Terraform, GitOps and observability setups on AWS: what I did, what broke, and how I fixed it.
20 articles published
FeaturedWhy HPA Wasn't Enough: Scaling Kubernetes on ALB Metrics with KEDA
HPA was watching CPU and memory. The pods were I/O-bound — stuck waiting on a down dependency — so CPU stayed at 45% while 502s piled up. The ALB had the right signal the whole time. We just needed something to read it.

Init Containers and Sidecar Containers: What They Are and When to Actually Use Them
Init containers and sidecars solve two very different problems — one handles setup before your app starts, the other runs alongside it permanently. This article explains when each one makes sense, with real examples you can follow.
GitOps with Argo CD: A Practical Kubernetes Guide
Git becomes your deployment interface. With Argo CD, every change goes through a pull request, every rollback is a git revert, and the cluster continuously reconciles toward what Git says it should be.

How I Cut Our Cloud Bill by $800 a Month Without Reducing Reliability
A practical breakdown of how we reduced Datadog APM and log management costs by 15% — around $800/month — through log retention tuning, sampling strategies, and a Savings Plan. What worked, what did not, and the numbers behind each decision.

Deploying and Scaling Applications on Amazon EKS
The cluster is running. Now we put it to work. The decisions behind packaging with Helm, scaling with HPA, routing through an ALB, and keeping secrets out of Git.
FeaturedGitHub Actions CI/CD Pipeline to Kubernetes: From Code Push to Live Deployment
A complete end-to-end CI/CD pipeline using GitHub Actions — linting, testing, building a Docker image, pushing to ECR, and deploying to Kubernetes automatically on every merge to main. Full working configuration included.

Multi-Environment Infrastructure with Terraform: A Complete Guide
How to structure Terraform for real multi-environment deployments — separate state per environment, shared modules, and the exact setup to make it work end to end.

Kubernetes Debugging: The Commands I Actually Use When Things Break
A practical debugging guide based on real incidents — how to systematically diagnose pod crashes, scheduling failures, networking issues, and performance problems using kubectl. With actual commands and what to look for in the output.