Python Backend & DevOps Engineer
Nov 2024 – PresentBuilding and maintaining a cloud-native developer platform on AWS EKS with Python backend services, async processing pipelines, and infrastructure as code.
Day-to-day: Python, AWS, Kubernetes, Terraform, and Claude Code with MCP tooling. AI in the loop, not on autopilot.
What I shipped
On-demand Browser IDE
Built a browser-based development environment that provisions isolated Kubernetes pods for each user session.
Each IDE session runs in an isolated pod with resource limits, persistent volume claims for workspace data, and automatic cleanup on session end. Provisioning is handled via Kubernetes API calls from a FastAPI backend with IRSA-based IAM roles.
Kubernetes, EKS, Python, FastAPI
Live Interview Collaboration
Worked on interviews.staffcoder.com, where an interviewer and a candidate collaborate in real time in a real IDE, with presence.
Both people work in the same live IDE session and can see each other online, so the interviewer can follow along while the candidate codes.
Browser IDE, Real-time collaboration, Presence
Sandboxed Runtime Environments
Built the runtime layer that runs untrusted user code: a Docker image per technology, sandboxed Docker, and Kubernetes, with privileged containers isolated by Kata Containers.
Each technology gets its own image, so a session starts with the right toolchain. Containers that need elevated privileges run under Kata Containers, which puts a lightweight VM boundary around them instead of sharing the host kernel. Kubernetes schedules the sessions, and network policies restrict egress from user pods.
Docker, Kubernetes, Kata Containers, EKS
AI Gateway with Per-User Budgets
Ran LiteLLM as a proxy that issues a temporary token per user, each with a token budget and a fixed lifetime.
Every user gets a short-lived key that can only spend its budget within its time window. The proxy records each user's total usage, and that total is read before the key is removed, so all usage is accounted for per user.
LiteLLM, Python
Per-Assessment AI Assistants
Added an AI chat or agent for each assessment and each technology.
The assistants run through the LiteLLM gateway, so the same per-user token budgets and usage accounting apply to them.
LiteLLM, Python
Abuse Protection and Rate Limiting
Protected public sign-up and submission flows from automated abuse with honeypot fields, disposable email blocking and rate limits.
Honeypot fields catch bots that fill in every input. Sign-up rejects disposable email addresses. Requests are rate limited with sliding windows in Redis, keyed per IP and per session.
Upstash Redis, FastAPI, Python
Async Submission Pipeline
Implemented an async grading and submission pipeline using SQS for decoupled processing.
Submissions are enqueued to SQS, consumed by worker services, and orchestrated through Step Functions for retry handling and dead-letter processing. This decouples request handling from compute-intensive grading, allowing independent scaling.
SQS, Step Functions, Python, Lambda
Kubernetes Infrastructure
Managed EKS clusters with Karpenter for dynamic node provisioning and cost optimization.
Karpenter replaces cluster-autoscaler for faster, more efficient node provisioning. Provisioner specs define node pools with taints, tolerations, and consolidation rules. IRSA grants pods scoped IAM permissions without long-lived credentials.
EKS, Karpenter, Kubernetes, IAM/IRSA
Infrastructure as Code
All infrastructure is defined in Terraform with modular, reusable components.
Terraform modules cover VPC, EKS, IAM, SQS, S3, and Lambda. State is stored in versioned S3 with DynamoDB locking. Changes are applied through GitHub Actions with plan/apply separation and PR-based reviews.
Terraform, AWS, GitHub Actions
CI/CD Pipeline
Designed GitHub Actions workflows for build, test, and deploy across all services.
Each service has a pipeline with lint, test, build (Docker), and deploy stages. Deployments target EKS via kubectl with image tags pinned to commit SHAs. Rollback is handled via image tag reversion.
GitHub Actions, Docker, EKS