Skip to content

Writing

Technical articles and thoughts on distributed systems, software architecture, and the tools that help us build better software.

· AI Agents · engineering

Running a Multi-Agent Team With Context Rotation

How a small standing team of named AI agents, each on their own feature branch, with a hard context-rotation rule and a Skeptic gate, delivered a four-phase Micronaut platform without stepping on each other.

AI AgentsEngineering ProcessClaude Code
· TDD · architecture

Phased TDD With Skeptic Gatekeeping

Running a four-phase, test-driven build with formal architectural review gates that catch the bugs your test suite cannot, and the three blockers a real review caught on a pipeline platform before any of them shipped.

TDDArchitecture ReviewProcess
· Micronaut · architecture

Publish Before Commit: Keeping RabbitMQ Out of Your Transactions

Why message publishes belong outside the @Transactional boundary, and the rollback-silenced-message bug pattern that motivates the rule.

MicronautRabbitMQTransactions
· Distributed Systems · architecture

Replay Idempotency in Stateful Pipelines

Where replays go wrong in stateful document pipelines: persistent credentials in JSONB, content-hash deduplication, and the latent non-idempotency hiding in chained replays.

Distributed SystemsIdempotencyRabbitMQ
· AI · engineering

From Copy-Paste to Context Engineering

How my development workflow evolved from chatbot-assisted debugging to building agent teams, skills, and TDD pipelines with Claude Code over the course of a year.

AIClaude CodeDeveloper Workflow
· Protobuf · engineering

Protocol Buffers Meet Elasticsearch

How I eliminated an entire layer of data translation by building a library that treats Protobuf message definitions as the source of truth for Elasticsearch indices.

ProtobufElasticsearchMicronaut