Node

Backend Runtime

·View all resources →

Node.js Learning Roadmap

Node.js lets you run JavaScript on the server — the same language you use in the browser, now powering APIs, real-time apps, and CLIs. It's the most popular backend runtime for JavaScript developers and is used by Netflix, LinkedIn, PayPal, and millions of startups. If you know JavaScript, Node.js is the fastest path to backend development.

Total time

3–5 months

Stages

6 stages

Job-ready at

Stage 4

Career paths

3 paths

1
2
3
4
5
6

Before you start — Prerequisites

✓
JavaScript fundamentals (required)

Node.js is JavaScript on the server. You need to know variables, functions, async/await, and modules before starting.

✓

Basic command-line usage

npm, node, and all Node.js tooling runs in the terminal.

1

Stage 1: Node.js Fundamentals

JS in the terminal, not the browser

2–3 weeks

Topics to cover

How Node.js differs from browser JSThe event loop and non-blocking I/ONode.js built-ins: fs, path, os, eventsrequire() vs ES module import/exportnpm: install, package.json, scriptsprocess.env and environment variablesStreams: readable, writable, transformEventEmitter patternBuffer and encodingnode --inspect and debugging

Bold = especially important

Milestone

You write Node.js scripts that read files, call APIs, and interact with the operating system — without a browser in sight.

Project to build

CLI file organiser

Scan a directory with fs, sort files by extension into subdirectories, log a summary — pure Node.js, no frameworks.

2

Stage 2: HTTP & Express

Build your first web API

2–3 weeks

Topics to cover

http module: createServer basicsExpress: routing, middleware, req/resRoute params, query strings, request bodyexpress.json() for JSON APIsError-handling middleware (4-arg signature)CORS with the cors packageStatic file servingRouter modules for code organisationmorgan and helmet for logging/securityPostman / Thunder Client for API testing

Bold = especially important

Milestone

You build a JSON REST API with Express — CRUD routes, middleware, and proper error responses. You can test it end-to-end with Postman.

Project to build

Notes REST API

Express app with GET/POST/PUT/DELETE for notes, JSON body parsing, 404/500 error handling, tested with Postman.

3

Stage 3: Databases & Authentication

Persist data and secure your API

3–4 weeks

Topics to cover

Connecting to PostgreSQL with pg or PrismaPrisma ORM: schema, migrations, queriesMongoDB with Mongoose (document model)bcrypt: password hashingJWT: issue and verify tokensAuth middleware: protect routesInput validation with Zod or Joidotenv and secret managementDatabase connection poolingRefresh token rotation

Bold = especially important

Milestone

You build an authenticated API — users register and log in, JWT protects private routes, data persists in a real database.

Project to build

Authenticated todo API

User registration + login, JWT auth, protected CRUD routes for todos, Prisma + PostgreSQL, input validation with Zod.

4

Stage 4: Testing, Tooling & TypeScript

✓ Min. Job Ready

Write production-quality Node.js code

2–3 weeks

Topics to cover

Jest or Vitest for unit and integration testsSupertest for HTTP endpoint testingTypeScript with ts-node or tsxESLint and Prettier for Node.js projectsNodemon for dev hot-reloadLogging with Pino or WinstonAPI rate limitingGraceful shutdown (SIGTERM handler)Environment-based config managementnpm audit and dependency security

Bold = especially important

Milestone

Your Node.js project has typed routes, tested endpoints, structured logging, and rate limiting. You're ready for a code review at any startup.

Project to build

Tested, typed API

Full TypeScript conversion of the todo API, Jest + Supertest integration tests for all routes, Pino logging, rate limiter.

5

Stage 5: Real-time, Queues & Deployment

Ship Node.js apps to production

3–4 weeks

Topics to cover

WebSockets with Socket.ioBackground jobs with Bull/BullMQ + RedisCaching with Redis (ioredis)Dockerising a Node.js appPM2 for process managementDeploy to Railway, Fly.io, or RenderGitHub Actions CI/CD for Node.jsSentry for error monitoringOpenTelemetry tracingAWS Lambda with Node.js runtime

Bold = especially important

Milestone

You deploy a Node.js API with CI/CD, add WebSocket support for real-time features, and use Redis for caching and job queues.

Project to build

Real-time chat API

Express + Socket.io chat server, Redis for session state, Dockerised, deployed to Fly.io with GitHub Actions CI.

6

Stage 6: Specialisation

Go deep in your area

Ongoing

Topics to cover

🔷 NestJS — enterprise Node.js framework⚡ Fastify — high-performance APIs🌐 Next.js — full-stack React + Node.js📡 GraphQL API with Apollo Server☁️ Serverless: Lambda, Cloudflare Workers🤖 AI integrations: OpenAI, Anthropic SDK📊 gRPC with Node.js🔌 Plugin system with Fastify

Bold = especially important

Milestone

You have a Node.js specialisation and at least one production deployment in your portfolio. Mid-level backend roles are within reach.

Frequently asked questions

Do I need to learn JavaScript before Node.js?

Yes — Node.js is JavaScript. You should be comfortable with variables, functions, arrays, objects, and especially async/await before starting Node.js backend development. JavaScript in the browser and Node.js on the server use the same language with different available APIs.

Node.js vs Python for backend — which should I learn?

If you already know JavaScript, Node.js is the fastest path to backend work — same language, same mental model. Python (with Django or FastAPI) has a stronger ecosystem for data science and ML. For pure web APIs, both are excellent; the choice often comes down to your team or job target.

What framework should I use with Node.js?

Express is the most common — minimal, flexible, and what most tutorials use. Fastify is faster with lower overhead. NestJS adds structure for large teams (TypeScript-first). Start with Express to understand the concepts, then evaluate frameworks based on your project needs.

Is Node.js good for production?

Yes — Node.js powers Netflix, LinkedIn, PayPal, Uber, and thousands of other production systems. Its event-loop model makes it excellent for I/O-heavy workloads (APIs, real-time apps). It's less suitable for CPU-intensive tasks (image processing, ML) where Go or Rust are better choices.

Do I need to know TypeScript for Node.js jobs?

Increasingly yes. Most modern Node.js codebases use TypeScript, especially at larger companies. Learn Node.js concepts with JavaScript first, then add TypeScript on top — the transition is straightforward once you understand the runtime.

Ready to start learning?

Browse our curated Node.js resources — every course, book, and video ranked by quality.

View Node.js Resources →