16 chapters, each a single readable page. Every concept is language-agnostic — the ideas hold whether you write Node, Python, Go or Java. Every 🚨 is a trap that takes down real production systems.
| 16 chapters |
130 interview questions |
120+ glossary terms |
~15,000 words, all in this repo |
Each chapter is its own page. Click one and start reading.
| Chapter | You'll learn | ||
|---|---|---|---|
| 0 | 🌱 Foundations | What a backend actually is, and what happens when you type a URL | 2 min |
| 1 | 🌐 HTTP | Requests, responses, methods, status codes, cookies | 3 min |
| 2 | 🖥️ Servers & concurrency | How one machine serves thousands of people at once | 3 min |
| 3 | 🔌 APIs | Designing a contract other people build on | 4 min |
| 4 | 🗄️ Databases | Modelling, indexes, EXPLAIN, transactions, race conditions | 8 min |
| 5 | 🔐 Security | Auth, passwords, JWT, OAuth, and the bugs that cause real breaches | 5 min |
| 6 | 🔁 Caching & queues | Serve it fast, do the slow work later | 3 min |
| 7 | ⚡ Performance | p95/p99, profiling, and where the time actually goes | 3 min |
| 8 | 🕸️ Reliability | The network will fail. Design like it already has. | 3 min |
| 9 | 🚀 DevOps & deploys | Containers, CI/CD, zero-downtime deploys | 3 min |
| 10 | 🧠 System design | The method, the maths, and the classic problems worked through | 3 min |
| Chapter | What's in it | ||
|---|---|---|---|
| 11 | 🎯 The interview round | The 45 minutes minute-by-minute, what they grade, how people fail | 2 min |
| 12 | 📖 Backend glossary | 120+ terms, each defined in one sentence | 12 min |
| 13 | ❓ 130 interview questions | Design-X prompts, deep dives, concepts, estimation, trade-offs | 14 min |
| Chapter | What's in it | ||
|---|---|---|---|
| 14 | 📋 Cheat sheets | Status codes, latency numbers, a red-flag checklist | 2 min |
| 15 | 📚 Where to go next | The best free resources, curated | 2 min |
Read these three and nothing else. They cover more real-world breakage than the rest combined:
| Read this | Because | |
|---|---|---|
| 1 | Indexes | Missing indexes cause more slowness than everything else put together |
| 2 | The N+1 query | You have written this bug. You just don't know it yet. |
| 3 | Timeouts | One slow dependency takes down your whole service without them |
| If you are… | Start here | Why |
|---|---|---|
| 🌱 New to backend | Chapter 0 · Foundations | Starts at "what is a server". Assumes nothing. |
| 🎨 A frontend dev switching over | Chapter 1 · HTTP → then jump to Databases | You already know HTTP from fetch(). Databases are the real gap. |
| 🔧 Already shipping APIs | Databases → Performance | Fill the holes: indexes, transactions, N+1, p99 |
| 🎯 Prepping for interviews | The interview round → 130 questions | The method, then the full question bank |
| 🚨 On call, something's broken | Reliability | Timeouts, retries, circuit breakers, the outbox |
| 🧠 Just want the vocabulary | Glossary | 120+ terms, one sentence each |
Most backend tutorials teach you a framework. You finish, you can wire up an Express route, and you still can't answer "why is this slow?" or "what happens when two people click Buy at the same time?"
BackendPath teaches the concepts underneath — the ones that stay true whether you write Node, Django, Spring or Go.
The promise: finish this and you can look at any backend, in any language, and know roughly how it works and where it will break.
A taste of what that means in practice — from Chapter 4 · Databases:
- ❌ BEFORE
Limit (actual time=142.318..142.325 rows=20)
-> Sort
-> Seq Scan on orders ← read the WHOLE table
Filter: (user_id = 42)
Rows Removed by Filter: 1988688 ← threw away 2 MILLION rows 😱
Execution Time: 142.401 ms
+ ✅ AFTER (CREATE INDEX ON orders (user_id, created_at DESC))
Limit (actual time=0.031..0.038 rows=20)
-> Index Scan using orders_user_id_created_at_idx on orders
Index Cond: (user_id = 42) ← walked straight to them
Execution Time: 0.061 ms ← 2,300× fasterThe same material also runs as an interactive site — backend.nextjoblist.com — free, no signup. It adds 68 lessons with quizzes, progress tracking, ⌘K search, and every code example switchable between JavaScript, Python, Go and Java.
Lessons — docs layout, TOC, quizzes, 4 languages
|
130 interview questions — each linked to where to learn it
|
The roadmap — 11 stages, 68 lessons, your progress tracked
|
|
Run it yourself
npm install
npm run dev # → http://localhost:5173| Command | |
|---|---|
npm run dev |
dev server |
npm test |
31 tests |
npm run build |
production build → dist/ |
Content is data; the app is a renderer. Lessons are plain Markdown in public/content/, listed in roadmap.json:
Put fenced code blocks for different languages next to each other and they render as one tabbed component (js · python · go · java).
The Pro Shelf reference pages live in src/pages/pro/, built from the vocabulary in ProKit.tsx.
Frameworks change every three years. The request lifecycle, indexes, transactions, caching, idempotency and failure modes don't.
Learn those, and you can pick up any backend, in any language, and know roughly how it works — and where it will break.
If this helped you, ⭐ the repo so the next person finds it.

{ "id": "my-lesson", // → /lesson/my-lesson "title": "My Lesson", "file": "01-http/my-lesson.md", "estMinutes": 8, "quiz": [{ "q": "…", "options": ["A", "B"], "answer": 1, "explain": "…" }], "resources": [{ "title": "…", "url": "…", "type": "docs", "note": "…" }] }