Part 8: Persistence and State - EF Core, Migrations, and Reliability
In the last part, we looked at how expressions make your workflows dynamic. Today, we are discussing the backbone of any production-ready system: Pers…
Latest Architecture news from Tech News
In the last part, we looked at how expressions make your workflows dynamic. Today, we are discussing the backbone of any production-ready system: Pers…
Lately I keep reaching for SQLite where, before, I'd have reached for Postgres without thinking. It started with small services, then a bigger questio…
SQLite WAL Debug, pgstream v1.1.0, & Postgres Scaling Retrospective Today's Highlights This week's database highlights include a deep dive into SQ…
Data privacy regulations such as GDPR, LGPD, and HIPAA demand that organizations know exactly where Personally Identifiable Information (PII) lives in…
Introduction If you've built Android apps with Room, you already think in a layered persistence model: entities define your schema, DAOs handle querie…
If you've ever investigated a slow Rails endpoint, chances are you've encountered one of the most common performance problems in the Rails ecosystem: …
When teams evaluate database platforms, the conversation usually revolves around performance, scalability, query optimization, and storage efficiency.…
Every product team eventually hits the same wall. Marketing wants to know which signups came from last week's campaign. Support wants a list of custom…
Running SQLite in production for a multi-tenant SaaS means giving up the operational comfort of a managed database. No automatic backups, no point-in-…
The 100-Million Row Wall In enterprise B2B SaaS platforms at Smart Tech Devs, tracking historical data is a compliance requirement. Tables like audit_…
PostgreSQL HA Risks, Replication Internals, & Rapid Branching Today's Highlights Today's highlights include critical insights into Patroni's repli…
You're probably using Redis for one job. There are 13 more, and a few of them work in ways that surprised me even after years of using it. I just publ…
I had a write that spanned two physically separate databases. A rename that had to propagate across several tables in one database and a couple of tab…
The thesis Quorum is built on is uncomfortable and true: the tools a team uses to coordinate an incident often live in the same region as the thing th…
Quorum is an incident command plane built on Amazon Aurora DSQL. The failover story lives in another post. This one is about a narrower question that …
A few years ago, choosing an ID format was easy. Most of us generated a UUID, stored it in the database, and moved on. Today things are different. Mod…
Every mainstream database uses fixed rules for deadlock victim selection. MySQL kills the one with the fewest locks. CockroachDB kills the youngest. P…
The Mongoose Caching Problem (And How We Solved It) From 300 RPS to 700+ RPS: A 2.2x Performance Breakthrough When you're building a Node.js applicati…
Traditional databases just can't keep up with high concurrency and low latency at the same time. The term "real-time" has become kind of meaningless. …
The Problem: Finding a Needle in a Haystack Answer-first: Uber and Grab find the nearest available driver in under 100ms by dividing the Earth's surfa…
If you're building a modern data stack that requires either high-throughput transaction processing or large-scale analytical workloads, you've likely …
I Thought This Would Take a Day The task: normalize phone numbers across a sharded production system. Multiple country databases, years of inconsisten…
I've been on both sides of the SQL interview table somewhere around 20 times in a single job search. The pattern is always the same: candidates know S…
Book: RAG Pocket Guide: Retrieval, Chunking, and Reranking Patterns for Production Also by me: Thinking in Go (2-book series) — Complete Guide to Go P…
TL;DR: This is not a cryptographic construction. It is a pragmatic engineering compromise for applications where encrypted storage is required but app…
You wrote your first REST endpoint. You ran your first SELECT * . Things worked. Life was good. Then a colleague casually mentioned "idempotency key,"…
In a multi-tenant B2B platform, data leakage is an extinction-level event. If Property A logs into your dashboard and accidentally sees the guest data…
DuckDB Data Inlining, SQLite Fossildelta OOB, Postgres 19 Temporal Data Today's Highlights Today's highlights include DuckDB's innovative data inlinin…
When people first start learning ClickHouse®, they usually focus on SQL queries, table engines, and performance optimization. But as data grows from m…
AI agents generate a substantial amount of raw interaction data during operation. When developers store this data as an ever-growing context blob and …