Backend Development
Build secure, fast APIs with Node.js or Python.
Learn what happens behind every app: HTTP, REST design, building APIs in Express and FastAPI, SQL and ORMs, authentication, validation, caching, background jobs, file storage, real-time, observability and security, then containerise and deploy.
You will be able to
- Design clean REST APIs
- Build APIs with Express and FastAPI
- Model data in Postgres and use migrations
- Add auth, validation, caching and background jobs
- Log, monitor and secure an API
- Containerise and deploy a backend
Who it's for
Beginners with some programming, frontend developers going full-stack, and freshers preparing for backend roles.
Before you start
Basic JavaScript or Python
Roles it leads to
Lessons
Module 1
Foundations
HTTP, REST and your first APIs.
What a backend does
Every app you use has a hidden half that stores data, enforces rules and talks to other systems. Learn what the backend is, what it does on each request and how it fits with the frontend and database.
HTTP in depth: methods, status codes and headers
HTTP is the language clients and servers speak. Learn the anatomy of a request and response, the main methods, the status codes you must know and the headers that matter, and try it yourself with curl.
Designing REST APIs
A well-designed API is easy to guess, easy to use and hard to misuse. Learn REST resource naming, how to map methods to actions, plus filtering, pagination, versioning and error format, using the Brew & Bean API.
Build an API with Node.js and Express
Build the Brew & Bean ordering API with Node.js and Express: routes, JSON bodies, validation, status codes, error handling and testing with curl. The same four endpoints appear in the FastAPI lesson.
Build an API with Python and FastAPI
Build the Brew & Bean ordering API with Python and FastAPI. Pydantic models give you automatic validation and free interactive docs. Same four endpoints as the Express lesson, so you can compare the two.
Module 2
Data
Relational databases, ORMs and NoSQL.
SQL and PostgreSQL for backend developers
Set up PostgreSQL, design the Brew & Bean tables, and learn the SQL a backend developer uses every day: SELECT, JOIN, GROUP BY, transactions, indexes and safe parameterised queries from Python or Node.js.
ORMs and migrations
Use SQLAlchemy to work with database rows as Python objects, and Alembic to change your database schema safely over time. You build the Brew & Bean models, create migrations, query, and connect it to FastAPI.
When to use NoSQL: MongoDB, Redis and DynamoDB
NoSQL is several different database designs, not one. Learn what MongoDB, Redis and DynamoDB are good and bad at, and how to choose from your data shape and queries, a common interview question.
Module 3
Production-ready APIs
Everything between "it works" and "it's live".
Authentication: sessions, JWT and OAuth
Learn how login really works: store passwords safely with bcrypt, issue and verify JWTs in FastAPI, protect routes by role, compare sessions with tokens, and understand the OAuth flow behind Sign in with Google.
Validation and error handling
Never trust request data. Validate input with Pydantic models, compute totals on the server, return one consistent JSON error shape, and handle unexpected crashes safely, with the same pattern shown in Express with Zod.
Caching with Redis
Speed up an API by caching with Redis using the cache-aside pattern, keep the cache fresh with TTLs and invalidation, measure the speed-up, and build a simple rate limiter with atomic counters.
Background jobs and queues
Keep your API fast by moving slow work like SMS, email and PDFs into background jobs. Use FastAPI BackgroundTasks for small things, then build a Redis queue with a separate arq worker, retries and job status.
File uploads and object storage
Accept file uploads safely in FastAPI with type, size and content checks, then learn why production apps use object storage like S3 and presigned URLs so files go straight from the browser to storage.
Real-time: WebSockets and server-sent events
Push updates to users the moment they happen. Build live order tracking in FastAPI with both WebSockets and server-sent events, and learn how to choose between them, secure them and scale them.
Logging, metrics and health checks
When an API breaks in production you can't attach a debugger. Add structured JSON logs with request IDs, Prometheus metrics and liveness/readiness health checks to a FastAPI app, so you can see what it is doing and why it failed.
API security essentials
Learn the handful of mistakes behind most API breaches: broken access checks, injection, leaked data, missing limits and weak configuration. Fix each one with small, concrete code changes.
Module 4
Ship it
Containers, deployment and a full project.
Containerise your backend with Docker
Package a FastAPI backend into a Docker image, run it as a container, and use Docker Compose to start it together with a Postgres database. This is the standard way teams ship backends.
Deploy a backend to the cloud
Take the Dockerised Brew & Bean API from your laptop to a public HTTPS URL. Learn the deployment checklist (config, database, health checks, logs) using Render as a worked example that applies to any host.
Project: library management API
Build a complete Library Management API with FastAPI and SQLAlchemy: books, members, loans, limits, fines in rupees and overdue reports. Add automated tests and containerise it. A portfolio-ready backend project.
GraphQL and gRPC: other API styles
REST is not the only way to build an API. Learn what GraphQL and gRPC are, what problems each solves, how a small GraphQL API looks in Python, and how to choose between REST, GraphQL and gRPC.
Tools, courses & exams
Hand-picked, free first. Free tiers and exam fees change, so check the provider's page.
Free tools
Node.js
OpenJS Foundation
The JavaScript runtime you need to run Express and most JavaScript backends. Install the current LTS version.
PostgreSQL
PostgreSQL Global Development Group
The open-source relational database used in this track. Installers for Windows, macOS and Linux, including the psql command-line client.
Docker Desktop
Docker
Runs databases and your own services in containers. The quickest way to start Postgres locally without installing it.
Free for personal use and learning under Docker's terms; paid plans apply to larger companies. Check the official page for the current terms.
Bruno
Bruno
A desktop API client for sending requests and saving them as files you can keep in Git. A lighter alternative to Postman for testing your APIs.
The open-source app is free; paid plans add extra team features.
Postman
Postman
A widely used graphical tool for sending HTTP requests, saving collections and testing APIs. Many employers use it, so it is worth knowing.
Free plan with limits; paid plans add collaboration and higher usage.
Free courses
Back End Development and APIs
freeCodeCamp
A free, browser-based course with projects on Node.js, Express and databases. Good for beginners who like learning by doing.
CS50's Introduction to Databases with SQL
Harvard University (CS50)
Free lectures and problem sets on relational design, SQL queries, indexes and transactions, taught step by step.
Course videos and materials are free; a certificate is optional and may cost extra. Check the official page.
The Odin Project: NodeJS
The Odin Project
A free, project-based path through Node.js, Express, databases and authentication. Best for those who want a full-stack JavaScript route.
NPTEL and SWAYAM university courses
IITs and IISc through NPTEL
Search for Database Management Systems and Computer Networks courses taught by IIT faculty. A strong, college-friendly base for SQL and how the web works.
Lectures are free; the proctored certification exam carries a fee. Check the official page for dates and fees.
Backend Developer Roadmap
roadmap.sh
A visual map of what a backend developer can learn, in a sensible order. Use it to plan what to study after this track.
Official docs
MDN: HTTP
Mozilla
The clearest reference for HTTP methods, status codes, headers, CORS and caching. Use it to look up anything from the HTTP lesson.
Express documentation
OpenJS Foundation
Official guides for routing, middleware and error handling in Express, with a getting-started section.
FastAPI documentation and tutorial
FastAPI
A step-by-step official tutorial covering path and query parameters, request bodies, validation, dependencies, security and deployment.
PostgreSQL tutorial
PostgreSQL Global Development Group
The official beginner tutorial for SQL in PostgreSQL: tables, queries, joins, aggregates, transactions. Read it alongside the SQL lesson.
SQLAlchemy unified tutorial
SQLAlchemy
The official tutorial for SQLAlchemy 2: engines, sessions, models, relationships and queries. The reference for the ORM lesson.
Alembic tutorial
SQLAlchemy
Official guide to creating and running database migrations, including autogenerate and downgrades.
Practice
SQLBolt
SQLBolt
Short interactive SQL lessons that run in the browser. A good first practice before real databases.
PostgreSQL Exercises
PGExercises
Graded exercises on a sample club database, from simple SELECTs to joins, aggregates and window functions, with runnable answers.
HackerRank: SQL
HackerRank
SQL problems from basic to advanced in the style used in online hiring tests and interviews.
Practice problems are free; some company-hiring features are paid for employers.
Exams & certifications