RSSAmplifier

Blog

devgeist — blog

Notes on software engineering.

devgeist.comRSS feed ↗10 posts

Latest posts

AI Agents Should Propose Infrastructure, Not Mutate It

Why agents holding cloud credentials undo a decade of infrastructure-as-code — and a design that keeps agent speed while putting a policy-checked gate between intent and effect.

Kubernetes Steering Wheel

Exploring Kubernetes HPA through control theory: dead time, windup, offset — and why HPA's math is smarter than it looks.

Why You Probably Shouldn't Build This

The operational cost of maintaining message ordering in Kafka with distributed locks — and when simpler alternatives are the better choice.

The Bugs You'll Find in Production

Implementation gaps in Kafka's ordered retry pattern: the per-key locking edge cases and production bugs the whiteboard diagrams don't show.

When the Retry Topic Breaks Ordering

Retry topics keep throughput high but break ordering. Learn why Kafka retries fail for stateful systems and how to maintain message order.

The Ghost in the Database

A production debugging story: how an empty MySQL table took 20 seconds to query, and what InnoDB's history list taught me about MVCC and purge operations.

When ctx.Done() Isn't Enough

Master graceful shutdown in Go beyond ctx.Done(). Two-phase shutdown pattern for message queues (SQS, Kafka, RabbitMQ), transactions, and batch jobs.

Kafka Consumer Health Checks: Dead or Alive?

Stop getting false alerts from Kafka consumers. This guide shows you how to measure progress instead of lag, with a production-ready Go library.

When Record-and-Replay Breaks

Real-world API simulation challenges beyond the basics: dynamic data, stateful interactions, and the edge cases that break naive record-and-replay setups.

Record and Replay

Why mock when you can simulate? Discover how to capture real API behavior and replay it in your tests to save costs, reduce latency, and improve reliability.