Notes from the field
Writing on cloud, DevOps, security, and AI engineering, informed by what actually goes wrong in production.
Evals for LLM apps: from vibes to numbers
If you ship an LLM feature without evals, you're flying blind. Here's how to set up evaluations that actually catch regressions, in a few hundred lines of code.
Securing AI endpoints: PII, prompt injection, and output filtering
Three categories of attack on production LLM endpoints and the defensive patterns that actually work in practice.
Azure AI Foundry: my honest first impressions
I've been using Azure AI Foundry on real projects for several months. Here's what's good, what's frustrating, and where it fits in the AI tooling landscape.
Cost control patterns for Azure OpenAI in production
Token spend on LLM features can go non-linear quickly. Here are the patterns I use to keep Azure OpenAI bills predictable without compromising the experience.
Building a private RAG with Azure AI Search and Azure OpenAI
An end-to-end blueprint for a retrieval-augmented chat over your own documents — locked down behind Private Endpoints and identity, deployed entirely on Azure.
Azure OpenAI vs OpenAI direct: which to choose
Same models, very different operational stories. A practical comparison from someone who's shipped both.