Learn backend engineering by understanding how real systems fail.
Practical guides for backend interviews: concurrency, databases, distributed systems, production errors and more. Most guides link to a real repository with failing tests, so you can debug the thing you just read about.
real repositories. failing tests.
go from theory to actual debugging.
Featured guides
View allIdempotency
An operation is idempotent when performing it more than once has the same effect as performing it once — the property that makes retrying safe.
Transaction isolation levels
An isolation level defines which effects concurrent transactions may observe, trading anomalies against blocking, aborts, and database overhead.
Race conditions
A race condition exists when the correctness of a result depends on the relative timing of operations that the system is free to interleave however it likes.
Browse by topic
Practice what you learn
Read a guide. Then debug the real thing.
Every important concept has a real repository with failing tests. Solve it in your browser and lock in what you just read.
- Real codebases
- Failing tests
- Java, Python, Node.js, C++
- Production-grade problems