GitHub Actions I Set Up on Every ProjectMost engineers using GitHub Actions daily know how to write a basic workflow — checkout, install dependencies, run tests, deploy. That covers 80% of what they need. The other 20% is a set of features Sep 21, 2026·6 min read·16
Structuring OpenAI and Gemini Calls in FastAPI: Prompts, Fallbacks, and RetriesThe fallback was supposed to be temporary. When the OpenAI API was unavailable, the service would return the last cached result for that user rather than failing the request. Clean degraded experienceSep 8, 2026·7 min read·9
PostgreSQL Connection Pooling on Cloud Run: The Problem Nobody Warns You AboutCloud Run scales horizontally. That's the point. Under load, it spins up new instances automatically — each one handling concurrent requests, each one maintaining its own connection pool to your CloudSep 1, 2026·6 min read·39
Building AI-Powered Backend Services: Why Most Integrations Break in ProductionThe integration looked solid. In testing, the AI-powered document extraction service worked exactly as designed — pull a PDF, send it to the model, parse the structured output, write to the database. Aug 22, 2026·4 min read·27
How I Structure a FastAPI Project for a Team of 5The first FastAPI project I led for a team had everything in two files. main.py with the routes. models.py with the Pydantic schemas. It worked fine until a second engineer joined and we started steppAug 18, 2026·6 min read·17
Terraform Modules That Don't Break When Your Team GrowsSix months into a project, our main.tf was 800 lines long. Every resource — Cloud Run services, Pub/Sub topics, Cloud SQL, Redis, IAM bindings, secrets — lived in one file. Nobody wanted to touch it. Aug 11, 2026·5 min read·15
Terraform for Application Engineers: Why You Should Own Your InfrastructureAt 11pm on a Tuesday, a Cloud Run service stopped accepting traffic. No deployment had happened. No code had changed. The service was running — Cloud Run showed healthy instances — but requests were tAug 9, 2026·5 min read·44