KubeShop
A polyglot microservices e-commerce platform deployed on AWS EKS to showcase a complete DevSecOps pipeline.
Overview
KubeShop is a full-fledged e-commerce platform that I built to really dig into modern cloud-native architecture. Instead of just building a simple monolithic app, I decided to go all out and create a polyglot microservices setup. It has a Next.js frontend, and the backend is split into multiple services written in Go, Python, Node.js, and Java. The whole thing runs on AWS EKS and is wired up with a complete DevSecOps pipeline from day one.
What I Did
I set up the entire infrastructure from scratch using Terraform to provision the EKS cluster and networking on AWS. For the deployment side, I implemented a GitOps workflow using Argo CD, paired with Jenkins for continuous integration. I also dove deep into observability by wiring up Prometheus and Grafana to keep an eye on all the moving parts, and I even threw in Locust for load testing to make sure the cluster could handle real traffic.
Tech Stack
Technical Decisions
I went with a polyglot backend intentionally to prove out the idea that Kubernetes doesn't care what language you write in, as long as it's containerized. For the infrastructure, Terraform was a no-brainer for managing AWS resources reliably. I chose Argo CD for deployments because I wanted that single source of truth—knowing that whatever is sitting in my Git repository is exactly what's running in my cluster gives you so much peace of mind.
Architecture
What I Learned
This project was a massive learning experience in distributed systems. Managing a bunch of different databases (MongoDB, PostgreSQL, Redis) across different services really forced me to figure out data persistence in Kubernetes. I also got a lot more comfortable with infrastructure-as-code and saw firsthand why GitOps is such a game-changer for keeping deployments safe, predictable, and out of the terminal.