node
Node.js, zero to senior
The runtime behind your backend — event loop, modules, async and streams — built up to senior depth.
Start track →Open the Mastery Lab
Curated hands-on challenges: build, diagnose, master.
Start from zero
What Node is: V8 + libuv, one event loop, non-blocking I/O.Modules & runtime
CommonJS vs ESM, and how npm resolves and locks dependencies.Async & streams
Callbacks → promises → async/await, and streams with backpressure.Errors & diagnostics
How Node surfaces, propagates, and lets you diagnose failures.Performance
Find and fix the event-loop and memory bottlenecks.HTTP & frameworks
From the raw http module to a production HTTP service.Testing
Fast, trustworthy Node tests.Security
The Node-specific attack surface.Packaging & deploy
Ship a Node service.Putting it together
Design and harden a small Node HTTP service end to end.Networking, deep
Below HTTP: raw TCP and UDP sockets, and the production traps.TLS and HTTP/2
Encrypted transport and the multiplexed protocol above it.Native addons & FFI
Calling C/C++ from Node — and when not to.Modules, deep
How Node finds code, and how packages expose it.V8 internals & crypto
How V8 optimizes your code, and using crypto correctly.Build with this track
Guided projects that exercise what you learn here.
Hot-Path Profiler Lab
Take a deliberately slow piece of JavaScript and turn it into a controlled experiment. You'll build a micro-benchmark harness you actually trust, profile the hot path until you can name what the engine is doing, and apply engine-aware fixes — monomorphism, killing megamorphic call sites, cutting allocations — proving each win with numbers instead of vibes. This is the whole discipline of performance work in miniature: measure, form a hypothesis about the engine, change one thing, measure again.
Mini CRUD API
Build your first real backend: a tiny HTTP API that creates, reads, updates, and deletes notes — backed by SQLite so the data survives a restart. You go from a one-line 'hello' server to a small service that validates input and stores rows, one honest step at a time.
Production-Shaped Nest Service
NestJS rewards you for structure and punishes you for skipping it. Build a service the way a team would ship it: feature modules with real boundaries, DTOs that validate at the edge, guards and interceptors that own cross-cutting concerns, a typed config you can't typo, and an e2e suite that boots the whole app. This is the difference between knowing Nest's decorators and knowing why they exist.
NestJS, zero to senior
A structured framework for Node backends — it gives your server a clear, opinionated shape so a TypeScript codebase stays organized as it grows into production.