Stage 1 of 7 · 10 lessons · ~6 months
Your language and how HTTP works
Get fluent in one backend language and its runtime, and learn exactly what happens between a client and your server. Everything later in this roadmap sits on these two things.
Start: The terminal and GitLessons· one lesson for each topic, in this order
- 1The terminal and GitLesson
- 2JavaScript essentialsLesson
- 3TypeScript types and strict modeLesson
- 4Modules and npm packagesLesson
- 5Promises and async/awaitLesson
- 6The event loopLesson
- 7DNS: from a name to an addressLesson
- 8TCP connections and TLSLesson
- 9HTTP requests, responses and headersLesson
- 10HTTP methods and status codesLesson
Start with· follow one of these
- CoursePaidGrokking JavaScript Fundamentals
Design Gurus · Beginner · $50
JavaScript itself in a sensible order: scope, closures, promises and async code
- GuideFreeNode.js Learn
OpenJS Foundation · Beginner
Official guides on the event loop, async work, the http module and environment variables
Practise
Keep handy
Also worth your time
The DNS, TCP, TLS and HTTP steps behind every request your backend will handle
Before moving on: Write a small TypeScript command line tool with tests using the built-in node:test runner, push it to GitHub in sensible commits, and explain every line of output from curl -v against a real website.

Learn JavaScript properly before TypeScript, then turn on strict mode and never turn it off. Understand the event loop early: most slow Node services are blocking it with synchronous work somebody did not notice.