Web Backend Development (Node.js, NestJS, MongoDB, PostgreSQL)
Backend Development Course Outline
Technologies: Node.js, NestJS, PostgreSQL, MongoDB
Module 1: Backend and JavaScript Foundations (Classes 1–4)
Class 1: Introduction to Backend Development
● Overview of backend systems
● Client-server architecture
● Introduction to REST APIs
● Development tools setup (Node.js, Postman, VS Code)
Class 2: JavaScript Refresher (Backend Focus)
● ES6+ features
● Arrow functions and destructuring
● Promises and async/await
Class 3: Node.js Fundamentals
● Introduction to Node.js
● Event loop and asynchronous behavior
● Modules and package management
Class 4: Basic Server Development (Express.js)
● Creating a server
● Routing
● Middleware basics
Module 2: Node.js and Express.js (Classes 5–8)
Class 5: REST API Design Principles
● HTTP methods and status codes
● RESTful conventions
● API structuring
Class 6: Middleware and Error Handling
● Custom middleware
● Centralized error handling
Class 7: Project Structure and MVC Pattern
● Controllers, services, and separation of concerns
● Scalable folder structure
Class 8: Configuration and Environment Management
● Environment variables
● Configuration patterns
Module 3: PostgreSQL (Classes 9–12)
Class 9: Database Fundamentals
● Relational vs non-relational databases
● Tables, relationships, and keys
Class 10: PostgreSQL Setup and Usage
● Installation and tools (pgAdmin)
● Database and table creation
Class 11: SQL Queries
● CRUD operations
● Filtering, joins, and sorting
Class 12: Integration with Node.js
● Database connection
● ORM introduction (TypeORM/Prisma)
● Building CRUD APIs
Module 4: MongoDB (Classes 13–16)
Class 13: NoSQL Concepts
● Document-based databases
● Use cases for MongoDB
Class 14: MongoDB Setup
● Local setup and MongoDB Atlas
● Collections and documents
Class 15: CRUD Operations in MongoDB
● Insert, query, update, delete
● Query operators
Class 16: MongoDB with Node.js
● Mongoose introduction
● Schema design and models
Module 5: NestJS Core (Classes 17–22)
Class 17: Introduction to NestJS
● Framework overview
● CLI setup and project structure
Class 18: Controllers and Routing
● Handling requests
● Route parameters and query handling
Class 19: Providers and Dependency Injection
● Services
● Dependency injection system
Class 20: Modules and Architecture
● Modular design
● Scalable architecture patterns
Class 21: DTOs and Validation
● Data Transfer Objects
● Validation using class-validator
Class 22: Middleware, Guards, and Interceptors
● Authentication guards
● Logging and transformation
Module 6: Authentication and Security (Classes 23–25)
Class 23: Authentication Fundamentals
● Sessions vs JWT
● Password hashing (bcrypt)
Class 24: JWT Authentication in NestJS
● Login and registration APIs
● Token handling
Class 25: Authorization and Role Management
● Role-based access control
● Guard implementation
Module 7: Advanced Backend Concepts (Classes 26–28)
Class 26: File Upload Handling
● File uploads using Multer
● Storage strategies
Class 27: API Documentation
● Swagger integration
Class 28: Performance and Caching
● Caching strategies
● Introduction to Redis
Module 8: Deployment and DevOps Basics (Classes 29–30)
Class 29: Application Deployment
● Deployment on cloud/VPS
● Environment configuration
Class 30: CI/CD Fundamentals
● Version control workflows
● Deployment pipelines
Module 9: Final Project (Classes 31–32)
Class 31: Project Development
● Build a complete backend system
● Authentication, database integration, and API design
Class 32: Project Completion and Evaluation
● Code review
● Debugging and optimization
● Interview preparation
One Month Guided Project with Trainer’s Support (02 days per week):
Trainer will check the progress of assigned individual Project and guide about further work.