Khóa học Backend Nodejs + Nestjs chuyên sâu làm dự án doanh nghiệp, Luyện thi chứng chỉ AWS

Khóa học Backend NodeJS Hiện Đại giúp bạn làm chủ việc phát triển ứng dụng backend với NodeJS và các công nghệ mới nhất trong ngành.
Programming FullhouseDev Premium
Tác giả FullhouseDev
1000+ Học viên
4.8
Mục tiêu của khóa học
  • 🔹 1. Kỹ năng lập trình & nền tảng
  • Vững JavaScript/TypeScript.
  • Hiểu sâu cơ chế event-loop, async/await, stream, memory model.
  • Biết tư duy thuật toán, xử lý bất đồng bộ, tối ưu hiệu suất code.
  • 🔹 2. Xây dựng Backend Node.js
  • Thành thạo Express / NestJS.
  • Thiết kế API chuẩn RESTful + phân trang + validation + authorization + versioning.
  • Tích hợp third-party services: email, payment, OTP, social login.
  • 🔹 3. Cơ sở dữ liệu & tối ưu
  • Thành thạo PostgreSQL / MySQL.
  • Thiết kế database theo chuẩn normalization.
  • Indexing – Query optimization – Transaction – Locking.
  • 🔹 4. Cache & Message Queue
  • Redis cache, rate limiting.
  • RabbitMQ (hoặc Kafka) để xử lý bất đồng bộ ở quy mô lớn.
  • 🔹 5. Kiến trúc & doanh nghiệp
  • SOLID, Clean Architecture, Domain Driven Design (DDD).
  • Monolith vs Microservices.
  • Logging hệ thống, Monitoring, Tracing.
  • 🔹 6. Testing & chất lượng code
  • Unit test, integration test, e2e test với Jest / Mocha.
  • Code review, Git-flow, pull request chuẩn doanh nghiệp.
  • 🔹 7. Dự án thực chiến
  • Tự tay xây dựng backend vận hành được.
  • Tự deploy sản phẩm lên môi trường staging & production.
Đối tượng học viên
  • Lập trình viên muốn học Backend Development với NodeJS
  • Developers muốn cập nhật kiến thức về công nghệ mới
  • Fullstack developers muốn chuyên sâu về NodeJS Backend
  • Sinh viên CNTT muốn học thêm kỹ năng thực tế
  • Người đi làm muốn chuyển sang Backend NodeJS
Sự khác biệt khoá học
  • 1. Giáo trình được xây dựng theo chuẩn “Doanh nghiệp thật – Vấn đề thật – Kiến trúc thật"
  • 2. Kèm từng học viên — cá nhân hóa tiến độ 100%
  • 3. Tích hợp học và ôn chứng chỉ AWS — lợi thế cực lớn khi xin việc
  • 4. 3-5 dự án thực chiến – Portfolio mạnh để xin việc
  • 5. Học theo cách “backend Engineer thực thụ” chứ không phải khóa học lập trình sinh viên
  • 6. Hệ thống bài tập chất lượng cao (100+ bài) được thiết kế theo mức độ “nhảy bậc”
  • 7. Định hướng nghề nghiệp + luyện phỏng vấn backend
  • 8. Khóa học dài 60 buổi – đủ sâu, đủ rộng, đúng trọng tâm backend

Nội dung chương trình học

Phần 1: ÔN TẬP JAVASCRIPT & TYPESCRIPT 8 BUỔI
Buổi 1 — Ôn tập JS cơ bản & Tư duy như Backend

Kiểu dữ liệu trong JS (Primitive vs Reference).

So sánh == vs === và pitfalls phổ biến.

Scope, hoisting, let/const/var.

Function, callback, higher-order functions.

Thực hành sửa lỗi JS với các ví dụ doanh nghiệp gửi.

Buổi 2 — Asynchronous JS

Promise, async/await, event loop.

Xử lý lỗi async đúng chuẩn (try/catch, .catch).

Các vấn đề thường gặp khi chạy đa luồng giả (blocking).

Thực hành viết module bất đồng bộ.

Bài tập: convert callback hell → async/await.

Buổi 3 — Ôn tập TypeScript (Phần 1)

Kiểu cơ bản: string, number, boolean, array, tuple.

Interface & Type alias.

Union, Intersection, Optional, Nullable.

Generic function & generic type.

Bài tập viết typings chuẩn cho API.

Buổi 4 — Ôn tập TypeScript (Phần 2)

Class, abstract class, implements.

Decorators & khi nào dùng.

Kiểu nâng cao: keyof, infer, mapped types.

Tách code TS theo module, namespace.

Bài tập: tạo type cho response API chuẩn doanh nghiệp.

Buổi 5 — Môi trường Node.js

Global vs Module scope trong Node.

CommonJS vs ESModule.

EventEmitter và ứng dụng.

Stream & Buffer (cách Node quản lý dữ liệu lớn).

Xử lý file hệ thống (FS module).

Buổi 6 — Package Manager & Tooling

npm/yarn/pnpm – chọn công cụ dùng tại doanh nghiệp.

Scripts & lifecycle (pre/post scripts).

Prettier, ESLint – setup tiêu chuẩn.

Cấu trúc thư mục backend chuẩn công ty.

Bài tập: tạo project Node + TS hoàn chỉnh.

Buổi 7 — Git Workflow dành cho team

Git branching chuẩn doanh nghiệp (Git Flow, Trunk).

Pull request & Code review best practices.

Resolve conflict nâng cao.

Viết commit message theo chuẩn Conventional Commit.

Bài tập thực hành merge & review code.

Buổi 8 — Algorithm cho Backend (cực thiết thực)

Data structure cần cho backend: Map, Set, Queue.

Thuật toán xử lý chuỗi, sort, filter hiệu quả.

Tối ưu vòng lặp và độ phức tạp O(n).

Thực hành xử lý dataset 50k record bằng JS.

Bài tập: xây search filter đơn giản.

Phần 2: PEXPRESS, DATABASE, ORM — 25 BUỔI
Buổi 9 — Giới thiệu Backend, MVC, REST

Backend là gì? Chu trình request → response.

MVC: Models – Controllers – Services.

RESTful API & best practice.

Khởi tạo dự án Express + Typescript.

Tổ chức thư mục chuẩn doanh nghiệp.

Buổi 10 — Cấu hình Express + TS + Nodemon

Thiết lập tsconfig.

Middleware cơ bản.

Logging bằng Morgan/ Winston.

Environment variables (dotenv).

Error-first callback pattern.

Buổi 11 — Database Overview

SQL vs NoSQL — chọn DB nào?

Giới thiệu PostgreSQL.

Cài đặt PostgreSQL + PGAdmin.

Kết nối Express ↔ PostgreSQL.

Query thuần SQL cơ bản.

Buổi 12 — SQL nâng cao

JOIN (inner, left, right).

Aggregate (SUM, COUNT, AVG).

GROUP BY & HAVING.

Index & Performance cơ bản.

Bài tập query phức tạp theo yêu cầu doanh nghiệp.

Buổi 13 — Giới thiệu ORM (Prisma/TypeORM)

ORM là gì? Ưu & nhược điểm.

Cấu hình ORM vào dự án.

Khởi tạo schema/model.

Migration cơ bản.

Tổ chức repository layer.

Buổi 14 — CRUD với ORM

Create/Read/Update/Delete.

Query builder cơ bản.

Pagination, sorting, filtering.

Transaction đơn giản.

Best practice khi viết query.

Buổi 15 — Mối quan hệ bảng

1–1, 1–N, N–M.

Cascade, relation options.

Relation query nâng cao.

Eager vs Lazy loading.

Bài tập: mô hình đơn hàng – sản phẩm.

Buổi 16 — REST API chuẩn doanh nghiệp

Response format chuẩn (data/meta/error).

Status codes đúng chuẩn.

Phân lớp Controller – Service – Repo.

Tách logic domain.

Bài tập: xây API CRUD hoàn chỉnh.

Buổi 17 — Query nâng cao

Search, filter đa điều kiện.

Query tối ưu với index.

Batch query & N+1 problem.

Phân tích query bằng EXPLAIN.

Bài tập performance.

Buổi 18 — Middleware nâng cao

Global middleware vs route middleware.

Logging nâng cao.

Response time measuring.

Multi-language error message.

Viết middleware custom.

Buổi 19 — Xử lý file upload

Multer setup.

Upload single/multiple files.

Validate file size/format.

Lưu file vào cloud (cloudinary/S3).

Endpoint upload avatar sản phẩm.

Buổi 20 — Validation với Zod / Joi

DTO & Schema Validation.

Custom validator.

Validate query/body/params.

Error handling chung.

Bài tập: validate form đăng ký.

Buổi 21 — Error Handling

Global error handler.

Custom error class.

Logging error.

Mapping error → HTTP code.

Best practice khi throw error.

Buổi 22 — Authentication (JWT)

Access token vs Refresh token.

Tạo token & verify token.

Middleware bảo vệ route.

Cơ chế logout.

Lưu trữ refresh token an toàn.

Buổi 23 — Authorization

Role-based access (RBAC).

Permission-based access (PBAC).

Guard middleware.

Phân quyền admin – user – mod.

Bài tập: phân quyền CRUD sản phẩm.

Buổi 24 — Mã hóa mật khẩu

bcrypt: salt, hash.

So sánh Argon2, PBKDF2.

Reset password flow.

Confirm email flow.

Security best practice.

Buổi 25 — OAuth2 Social Login

OAuth2 flow.

Google login.

Facebook login.

Xử lý đồng bộ user profile.

Vấn đề bảo mật khi dùng OAuth.

Buổi 26 — Bảo mật Web phần 1

XSS (Stored/Reflected).

CSRF & CORS.

Sanitizing input.

Headers bảo mật.

Tấn công phổ biến với API.

Buổi 27 — Bảo mật Web phần 2

Rate limit chống brute force.

IP block/allowlist.

SQL injection với ORM.

Mass assignment protection.

Encryption vs hashing.

Buổi 28 — Caching với Redis (cần cho doanh nghiệp)

Redis là gì? Dùng để làm gì.

Caching API.

Cache invalidation strategies.

Lưu session vào Redis.

Caching database query.

Buổi 29 — Background Job với Queue

Tại sao cần Queue?

BullMQ & Redis setup.

Producer – Consumer.

Retry, backoff, delay job.

Bài tập: gửi email async.

Buổi 30 — Performance Tuning

Tối ưu API.

Tối ưu query.

Memory leak trong Node.

Load test với k6.

Caching chiến lược.

Buổi 31 — Unit Test (Express)

Jest setup.

Mock function & database.

Test service logic.

Test controller logic.

Code coverage.

Buổi 32 — Integration Test

Test API thật với supertest.

Setup DB test.

Clean DB sau mỗi test.

Test workflow CRUD hoàn chỉnh.

CI/CD testing pipeline (giới thiệu).

Buổi 33 — Dự án Mini 1: API thương mại điện tử

Module user + auth.

Module product + category.

Module order.

Tối ưu query.

Viết test cho 1 module.

Ôn Tập toàn Phần
Phần 3:NESTJS FRAMEWORK CHUYÊN SÂU — 15 BUỔI
Buổi 34 — Tổng quan NestJS

Module, controller, provider.

DI container.

Chuyển tư duy Express → NestJS.

Project structure chuẩn.

Live coding demo API đầu tiên.

Buổi 35 — Controller & Service nâng cao

DTO & validation.

Response interceptor.

Custom pipes.

Service patterns.

Tách layer logic chuẩn doanh nghiệp.

Buổi 36 — Exception Filters

Global vs Local filter.

Format error chuẩn.

Mapping lỗi business logic.

Logger integration.

Best practice của doanh nghiệp.

Buổi 37 — Middleware & Guards

Guard cho RBAC.

Middleware logging nâng cao.

Interceptor caching.

Lifecycle của request trong Nest.

Demo bảo vệ route.

Buổi 38 — NestJS + Database

Prisma/TypeORM trong Nest.

Repository pattern.

Migration + seed data.

Nối các module lại với nhau.

Bài tập: module product.

Buổi 39 — Microservices Overview

Khi nào nên dùng microservice.

Những sai lầm phổ biến.

Communication pattern.

Monolith vs Microservices.

Design module chia nhỏ.

Buổi 40 — Microservice qua HTTP

Gateway pattern.

Service-to-service via HTTP.

Error handling multi-service.

Service discovery.

Demo phân tách Auth service.

Buổi 41 — Microservices qua Queue

Queue vs Event bus.

RabbitMQ / Kafka (chọn 1).

Producer – Consumer.

Retry, dead-letter queue.

Pattern event-driven.

Buổi 42 — Xây dựng service event-driven

Event dispatch.

Listener patterns.

Choreography vs Orchestration.

Saga pattern (giới thiệu).

Demo xử lý thanh toán đơn hàng.

Buổi 43 — API Gateway

Gateway routing.

Rate limit + auth gateway.

Aggregate response từ nhiều service.

Bảo mật giữa các service.

Mô hình thực tế doanh nghiệp.

Buổi 44 — Test trong NestJS

Unit Test cho provider.

Mock dependency injection.

Test controller.

Test service gọi queue.

Code coverage.

Buổi 45 — E2E Test trong NestJS

Setup module E2E.

Fake DB.

Test các luồng người dùng.

Test auth – product – order.

Kỹ thuật test CI.

Buổi 46 — Advanced Architecture

Clean Architecture.

Hexagonal Architecture.

Domain-driven design (DDD).

Anti-corruption layer.

Bài tập tái cấu trúc module.

Buổi 47 — Design Patterns trong Backend

Factory pattern.

Strategy pattern.

Repository pattern.

Adapter pattern.

State machine pattern.

Buổi 48 — Dự án Mini 2: Microservices

Auth service.

Product service.

Order service + queue.

API gateway.

Test toàn bộ hệ thống.

Phần 4: PROJECT CUỐI KHÓA 12 BUỔI
Buổi 49–50 — Phân tích yêu cầu & đặc tả

Đọc yêu cầu doanh nghiệp thật (tutor cung cấp).

Thiết kế database.

Phân module monolith/microservice.

Viết API contract (OpenAPI).

Task breakdown theo sprint.

Buổi 51–52 — Xây module Auth

Đăng ký, đăng nhập.

JWT + Refresh token.

Phân quyền RBAC.

Test auth.

Security hardening.

Buổi 53–54 — Xây module Product + Search

CRUD product.

Upload ảnh với S3.

Caching sản phẩm bằng Redis.

Full-text search.

Test module product.

Buổi 55–56 — Xây module Order + Payment

Tạo đơn hàng.

Xử lý tồn kho qua queue.

Transaction nâng cao.

Event-driven order flow.

Dashboard thống kê đơn.

Buổi 57–58 — Tối ưu hiệu năng toàn hệ thống

Load test.

Tối ưu query.

Tối ưu API.

Error monitoring.

Logging chuẩn doanh nghiệp.

Buổi 59–60 — Review & Demo tốt nghiệp

Hoàn thiện tài liệu.

Viết README chuẩn công ty.

Demo dự án cuối khóa.

Review theo tiêu chí doanh nghiệp.

Hướng dẫn chuẩn bị CV + portfolio backend.