Put a UUID on the invoice before you need it
The claim Give every business record a stable, public-safe identifier at the moment it is created, separate from its database primary key. The auto-incrementing integer is fine ins...
Read articleInsights
Engineering notes, infrastructure deep dives and practical guides from the Exotecho team.
The claim Give every business record a stable, public-safe identifier at the moment it is created, separate from its database primary key. The auto-incrementing integer is fine ins...
Read articleThe claim LIMIT 20 OFFSET 5000 has two defects, and the well-known one is the lesser. Yes, it gets slower linearly, because the database must produce and discard five thousand rows...
Read articleThe claim A feature flag is a deployment tool with a lifespan measured in weeks. A flag that survives past its launch becomes permanent configuration nobody understands, and a code...
Read articleThe claim Most cascading outages are not caused by a component failing. They are caused by a component being slow while every timeout in the stack is longer than the one upstream o...
Read articleThe claim Free-text log lines without a correlation identifier are not diagnostic data. They are a diary. During an incident you cannot answer the only question that matters — what...
Read articleThe claim Any call to a third-party service inside a request handler makes that service a hard dependency of your application. Sending mail synchronously means your order confirmat...
Read articleThe claim On a typical content or commerce site, images account for the majority of transferred bytes — usually 55% to 75% — and the fix is a build step you configure once, not a f...
Read articleThe claim A migration that changes the shape of a table and the code that reads it in the same deploy cannot be rolled back. During the seconds or minutes when old and new applicat...
Read articleThe claim An endpoint that returns 200 unconditionally is worse than having no health check at all. It converts a loud failure into a silent one: your load balancer keeps routing t...
Read article