Dilshod.dev

Writing

Notes on software engineering, system design, and the craft of building.

postgresqldatabases

The Index That Does Nothing

You added the index, ran the query, and it is still slow. The planner is not ignoring you — it is telling you something about your data, your column order, or your types. Here is how to read what it says.

12 min read
backendnodejs

Background Jobs That Survive a Crash

A deploy restarted the workers mid-flight and the emails were simply gone. What it takes to build a queue where a dead process is a delay, not a data loss.

13 min read
architecturepayments

Idempotency Is Not a Header. It Is a Contract.

Every payment provider tells you to make your webhook idempotent. Almost nobody tells you what that actually requires — which is a decision about identity, a decision about state, and a place to put the evidence.

6 min read
airag

RAG Is Mostly a Retrieval Problem

When a RAG system answers wrong, the model is usually not the culprit — the right chunk never made it into the context. Here is how to prove that, and what to fix once you have.

12 min read
architecturepostgresql

One Missing WHERE Clause

Tenant isolation held together by developer discipline will eventually fail, because it only takes one query. Here is how to push the boundary down into Postgres so forgetting stops being possible.

11 min read
aiengineering-culture

The AI Wrote It. You Still Own It.

Generating code got cheap. Understanding it did not. Review is now the bottleneck skill, and reviewing generated code is harder than reviewing a colleague's.

11 min read