Start Here
Welcome to Backend Engineering Journey.
This curriculum is engineered for a specific transition: moving from rusty, fragmented coding knowledge (~10% retention) to Mid-to-Senior Backend Software Engineer capable of designing, implementing, reviewing, and operating production systems in the AI era.
1. Philosophy: Engineering in the AI Era
AI coding assistants can write boilerplate CRUD endpoints in seconds. They also routinely introduce:
- Silent $O(n^2)$ loops and ORM $N+1$ query explosions.
- Race conditions, missing database transaction locks, and non-idempotent retries.
- Blocking calls inside
asyncioevent loops that freeze entire servers. - Unbounded memory buffers and missing timeouts that cause cascading failures.
Therefore, this curriculum does not test whether you memorized function signatures. Every lesson trains you on four things:
- First-Principles Mechanics: How Linux, TCP, Python's memory model, PostgreSQL's B-Tree/MVCC, and Redis/RabbitMQ actually work under the hood.
- Reading Companion: Exact chapter pointers to the highest-signal software engineering books so you build deep theoretical backing alongside code.
- AI Trap & Code Review: Every lesson includes a realistic snippet of plausible-looking "AI-generated" code containing a subtle production bug that you must diagnose and fix.
- Incremental Portfolio Architecture (
pulseforge/): Instead of throwaway toys, you evolve a single flagship backend platform across all six phases (v0.1$\rightarrow$v1.0).
2. How to Work Through a Lesson
Every lesson directory follows a strict layout:
NN-lesson-slug/
├── README.md # The complete lesson text & reading companion
├── examples/
│ ├── 01_working_demo.py # Runnable demonstration of the concept
│ └── 02_broken_trap.py # Deliberately broken code demonstrating a failure mode
├── exercises.py # The 5-rung exercise ladder (you edit this!)
├── test_exercises.py # Automated verification suite
└── solution/
├── exercises.py # Reference implementation
└── SOLUTION.md # Architectural walkthrough & interview answers
Your step-by-step routine for each lesson:
- Launch the Local Browser UI (optional but recommended): ``
bash python3 -m web_ui.server --no-open`Openhttp://127.0.0.1:5050`. - Read
## At a glanceand## Reading Companion: Skim or read the recommended book pages if you want deeper context. - Read
## Deep diveand runexamples/: ``bash python3 phase0-foundations/01-linux-and-shell/01-processes-and-streams/examples/01_streams_and_signals.py`` Never just read code—run it and observe the output. - Study
## AI Trap & Code Review: Try to spot the production bug before reading the explanation. - Solve the 5-Rung Exercise Ladder in
exercises.py: - Rung 1 (Warm-up): Basic mechanics verification. - Rung 2 (Fix the AI Bug): Repair a broken/leaky implementation. - Rung 3 (Implement): Build a core component from specification. - Rung 4 (Refactor): Clean up structure, typing, or algorithmic complexity. - Rung 5 (Production Edge-Case): Handle concurrency, partial failure, or malicious input. - Run the tests until green: ``
bash python3 -m unittest phase0-foundations/01-linux-and-shell/01-processes-and-streams/test_exercises.py -v`` - Answer the
### Can you explain?questions out loud: These are real Mid-Level backend interview questions. Only after answering them, expand the Reference Solution (SOLUTION.md) in the web UI. - Mark complete & commit: Use the self-check panel in the web UI. It ticks the lesson in
PROGRESS.mdand saves your rungs and notes toprogress/rungs.json. Commit both with the lesson: ``bash git add -A git commit -m "feat(p0-01-01): complete processes and streams exercises"``
3. Recommended Weekly Schedule (~15–18 Hours/Week)
- Deep Work Days (e.g., Sat, Sun, Mon — 3 hours/day):
- First 45 mins: Review book chapter excerpt + run
examples/. - Next 2 hours 15 mins: Complete the 5-rung exercise ladder and make all tests pass.
- Light Study Days (University/Busy Days — 45–60 mins/day):
- No heavy coding. Read the
Reading Companionchapters (DDIA, Fluent Python, SQL Performance Explained), reviewSOLUTION.mdtrade-offs, or practice Code Review exercises. - Consolidation Day (e.g., Friday — 4 hours):
- Integrate what you learned into the
pulseforge/milestone for the current phase, runpython3 -m tools.lesson_lint, and tag completed milestones.