Writing
Notes from the job: architecture, Python, AI in production and how I work. A new piece every two weeks.
MCP Got My Agents Connected. Here's Everything I Had to Build Around It
MCP made it easy to describe a tool once and let the model call it; making those tool calls hold up in production was a separate job, and that is where most of my time went.
Read the article →MCP Got My Agents Connected. Here's Everything I Had to Build Around It
MCP made it easy to describe a tool once and let the model call it; making those tool calls hold up in production was a separate job, and that is where most of my time went.
Agentic AI in Production: What I Learned Building Tool-Calling Workflows
Practical lessons from deploying AI agents with tool-calling. Hallucinated arguments, infinite loops, runaway costs, and the guardrails that actually prevent them.
Building a RAG Pipeline That Actually Works
Production-focused guide to building RAG pipelines with Python. Chunking strategies, vector search with pgvector, re-ranking, prompt construction, and the stuff that breaks past the tutorial stage.
I Was Spending $650 a Month on AI Coding Tools. Here's What I Changed
My AI coding bill reached about $650 a month on GitHub Copilot. I spent a month on a free local model, went back to Claude, and now use both.
5 Python Patterns I Use in Every Microservice
Python patterns I rely on for production microservices: structured config, graceful shutdown, real health checks, idempotent message processing, and structured logging. All with code.
How I Use AI to Write Better Code (Without Losing My Skills)
A senior engineer's honest take on AI-assisted development. What actually helps, what's a waste of time, and how to keep your skills sharp while shipping faster.
Migrating to Microservices: Lessons from Rebuilding CalcMenu Cloud
How I led the rebuild of a slow, buggy legacy platform into a microservice-based one without interrupting customer service, and the unglamorous work that made it possible.
Nothing matches that yet. Try another word, or .