← Back home

Writing

Long-form notes on architecture, AI governance, and shipped project work.

Lessons Learned Deploying a RAG API to Google Cloud Run

3 min

Eight concrete gotchas from shipping a FastAPI + LlamaIndex + Qdrant RAG backend to Cloud Run — shared embedding dependencies, default service-account permissions, and why Cloud Run is private by default.

raggoogle-cloud-runllamaindexdeployment

Ontology Engineering and CQRS

5 min

What an ontology actually is, when OWL/DL reasoning earns its cost over a plain knowledge graph, and why event sourcing and ontology engineering are orthogonal, not competing, concerns.

ontology-engineeringcqrsevent-sourcingknowledge-graphs

Observability Tells You What Happened, Evals Tell You If It Was Any Good

6 min

Why LLM observability and evaluation are two different jobs — and the loop (trace, evaluate, regression-test, deploy, pull failures back into the dataset) that most teams still aren't running end-to-end.

llm-observabilityevalsai-in-production

Why We're Rebuilding Hadisfar Health From the Ground Up

3 min

An early look at why Hadisfar Health moved off managed WordPress hosting entirely — since revised: the live site now runs on Astro + Firebase Hosting + Cloud Run, not the Frappe Builder stack described below.

case-studygcpwebsite-migration

Agent Plugins: Bundling Behaviour, Not Just Access

3 min

MCP solved what tools an agent can access — Agent Plugins solve how it should use them, bundling skills, tools, rules, and hooks behind progressive disclosure instead of an ever-growing system prompt.

agentic-aigoogle-adkmcpagent-plugins

Registries and DORA

2 min

A breakdown of the registries and records the EU's Digital Operational Resilience Act (DORA) requires — at the financial entity, competent authority, and European Supervisory Authority level.

doraregulatory-complianceict-risk-management