
Decisions documented. Trade-offs on the record.
Each post traces a real production choice—what we benchmarked, what we discarded, and why the schema looks the way it does.


Index strategy that cut query time in half
We ran the same read-heavy workload against three index configurations. Two performed identically under light load; only one held under concurrent writes at production volume.
The post documents each configuration, the benchmark setup, and the query plan diffs that made the decision obvious.
Recent writing
Job queues that don't back up under load
Versioning an API without breaking clients
Zero-downtime migrations on a live schema
Connection pooling decisions at scale
Header-based vs. path-based versioning: the trade-offs we weighed and which one survives a multi-tenant deploy.
PgBouncer vs. application-level pooling: observed connection counts, saturation points, and our current default.
Concurrency settings, retry logic, and the dead-letter pattern we now use by default.
Column renames, backfills, and the two-phase deploy sequence we run before every schema change.
Reviewed the architecture. Ready to talk?
Send us a project brief. We'll respond with a written assessment of the technical problem before any scoping call.
