Backend Mastery Learning Sprint (Frontend → Fullstack → AI SaaS)
Lộ trình Software Engineering và Backend cho FE Engineer đã vững JS/TS, mục tiêu gần: chuyển full-stack trong công việc, mục tiêu dài: build & deploy một AI SaaS production-ready và chuẩn bị cho phỏng vấn Software Engineer. GĐ26–GĐ27 bổ sung nhánh Frontend Architecture và Browser Performance; GĐ28–GĐ33 là nhánh AWS Solutions Architect – Associate (SAA).
Cách dùng: mỗi file = 1 giai đoạn, đánh số 00 → 33 (định nghĩa → tại sao → cơ chế → ví dụ → pitfall). GĐ00–GĐ25 là lộ trình Backend → AI SaaS; GĐ26–GĐ27 là nhánh Frontend sau JS/TS, HTML/CSS và một UI framework. GĐ28–GĐ33 là nhánh SAA, bắt đầu sau GĐ16, không cần hoàn tất các nhánh khác.
Hai trang tra cứu#
| Trang | Dùng khi |
|---|---|
| Index dự án | Xem toàn cảnh 5 dự án, thứ tự phụ thuộc, tiến độ |
| Glossary EN ↔ VN | Tra thuật ngữ EN ↔ VN |
Các giai đoạn (34 giai đoạn)#
Phần 0 — Software Engineering Foundation ⟨học xen kẽ với backend, không chờ học xong mới build⟩
- GĐ00 — Data Structures, Algorithms & Complexity — cấu trúc dữ liệu, pattern thuật toán, Big-O, bài tập gắn với backend
- GĐ01 — Systems Foundation — OS, Linux, database internals, networking và thí nghiệm production
Phần 1 — Backend nền tảng
- GĐ02 — TypeScript & toolchain cho Backend — tsconfig, ESM/CJS, alias, build, lint, debug
- GĐ03 — Nền tảng: HTTP / Node runtime / async / networking
- GĐ04 — Express: cơ chế & cấu trúc project ⟨Dự án 1: Todo API⟩
- GĐ05 — Database: SQL/Postgres, Prisma, migration, Redis, full-text search ⟨Dự án 2⟩
- GĐ06 — MongoDB & NoSQL: schema design, aggregation, transaction
- GĐ07 — NestJS: DI, guards/pipes, auth JWT + OAuth/Social login ⟨Dự án 3⟩
- GĐ08 — Clean Architecture: tầng, ranh giới, và khi nào đừng dùng
- GĐ09 — API thực chiến: security, jobs, realtime, caching, pagination, observability
- GĐ10 — Queues, Jobs, Workers & Cronjob
- GĐ11 — Search & Elasticsearch: inverted index, relevance, đồng bộ dữ liệu
Phần 2 — Nền tảng production ⟨GĐ12–14 học song song được⟩
- GĐ12 — File upload, Object Storage & Email
- GĐ13 — Testing: chiến lược & tự động hoá ⟨ưu tiên cao nhất trong ba⟩
- GĐ14 — Vòng đời dữ liệu: soft delete, audit, thời gian, tiền, backup
- GĐ15 — DevOps: Docker, CI/CD, deploy Railway/VPS/AWS ⟨đóng gói app, pipeline và chọn nơi deploy⟩
- GĐ16 — AWS nền tảng cho Backend: EC2, S3, IAM, RDS, Lambda, CloudWatch, VPC — giải thích kỹ từng dịch vụ, ví dụ Node.js và bài lab tích hợp
- GĐ17 — Cloudflare cho Backend: Workers, R2, D1, KV, Queues, Durable Objects, DNS/CDN — giải thích kiến trúc edge, binding, storage, queue, bảo mật và bài lab upload tài liệu
- GĐ18 — Kubernetes & container orchestration
Phần 3 — Tư duy hệ thống ⟨sản phẩm thật + phỏng vấn senior⟩
- GĐ19 — Distributed Systems: nền tảng lý thuyết dùng được
- GĐ20 — Microservices: ranh giới, giao tiếp, và cái giá thật
- GĐ21 — System Design & Scaling
Phần 4 — AI Engineering (cho AI SaaS)
- GĐ22 — Tích hợp LLM: OpenAI/Gemini APIs + Prompt Engineering
- GĐ23 — Embeddings + Vector Databases (pgvector) + RAG
- GĐ24 — AI Agents + Tool Calling + MCP
- GĐ25 — Capstone: Build & deploy AI SaaS production-ready ⟨auth+billing+RAG+streaming+quota+observability⟩
Phần 5 — Frontend Engineering (nhánh chuyên sâu, học độc lập)
- GĐ26 — Frontend Architecture, Design System, Micro Frontends & Module Federation — modular architecture, ranh giới domain/team, Design System có governance, và lab host/remote có rollback
- GĐ27 — Frontend Performance, Web Workers & Service Workers — Core Web Vitals, field/lab measurement, main-thread CPU, caching/offline và lab có performance budget
Phần 6 — AWS Solutions Architect – Associate (nhánh chuyên sâu, sau GĐ16)
- GĐ28 — SAA: Lộ trình & Tư duy kiến trúc — SAA-C03, bốn domain, Well-Architected, requirements và failure domains
- GĐ29 — SAA: Security & Networking — IAM/STS, KMS, VPC, endpoints, hybrid network, DNS/CDN và bảo vệ workload
- GĐ30 — SAA: Compute & Resilience — EC2/ECS/Lambda, ELB/Auto Scaling, messaging, HA và disaster recovery
- GĐ31 — SAA: Storage & Databases — S3/EBS/EFS/FSx, RDS/Aurora/DynamoDB, cache, analytics và access patterns
- GĐ32 — SAA: Cost & Migration — pricing models, network/storage costs, operations, migration và bản đồ dịch vụ
- GĐ33 — SAA: Labs, Case Studies & Ôn tập — 6 lab có evidence/cleanup (kèm biến thể không NAT và bước quét tài nguyên sót), SaaS architecture, 16 câu tự luyện và ngân hàng 65 câu theo domain có giải thích từng phương án
Bản đồ phụ thuộc#
Đọc bản đồ:
- Bắt đầu: học GĐ00 và GĐ01 theo nhịp 30–40% thời gian, đồng thời bắt đầu build ở GĐ02. Không cần hoàn thành hết DSA mới được học backend.
- Đường xương sống: GĐ02 → GĐ03 → GĐ04 → GĐ05 → GĐ07 → GĐ09 → GĐ10 → GĐ15 → GĐ16 AWS → GĐ17 Cloudflare. K8s ở GĐ18 là nhánh tiếp theo để học orchestration.
- GĐ06 (MongoDB) sau GĐ05, không trước — cần khái niệm quan hệ + transaction làm nền so sánh.
- GĐ08 (Clean Architecture) sau GĐ07 — chỉ có ý nghĩa khi đã cảm thấy đau vì code rối.
- GĐ11 (Search) sau GĐ10 — vì đồng bộ index dùng lại outbox + worker của GĐ10.
- GĐ12/GĐ13/GĐ14 học song song được. Nếu chỉ chọn một: GĐ13 (testing) trước.
- GĐ19–GĐ21 là khối "tư duy hệ thống". Cần cho phỏng vấn senior; với sản phẩm thật, đọc sau khi có hệ thống để mổ xẻ. Nếu đang chuẩn bị phỏng vấn, đọc sớm cũng được — khối này độc lập tương đối: chỉ cần hệ thống DA3 làm đất thực hành, không cần GĐ22–GĐ25.
- GĐ08 mục 3.1 (UnitOfWork + outbox) dùng outbox ở GĐ10 mục 3 và 4; đọc phần đó của GĐ10 trước nếu muốn làm trọn bài.
- GĐ24 phần MCP qua HTTP cần xác thực ở GĐ07 và GĐ09; GĐ25 dùng lại shutdown (GĐ09 mục 18), outbox (GĐ10), test (GĐ13), xoá dữ liệu (GĐ14) và kiểm tải (GĐ21), nên học GĐ25 sau các giai đoạn đó.
- GĐ22–GĐ24 có thể bắt đầu song song với GĐ12–GĐ14 nếu bạn nóng lòng chạm vào AI, nhưng không thay thế project full-stack nền tảng.
Nhánh frontend chuyên sâu có dependency riêng, không cần xong Backend/AI:
Stack mục tiêu#
Node.js + Express/NestJS · PostgreSQL + Prisma + pgvector · MongoDB · Elasticsearch/Meilisearch · Redis + BullMQ · JWT/OAuth + Security · Docker + GitHub Actions · AWS EC2/S3/IAM/RDS/Lambda/CloudWatch/VPC · Cloudflare Workers/R2/D1/KV/Queues/Durable Objects · Kubernetes · Email · Vitest + Testcontainers + Pact + k6 · OpenTelemetry · OpenAI/Gemini + Prompt Engineering · Embeddings + Vector DB + RAG · AI Agents + Tool Calling + MCP · Frontend architecture + Design Systems + Micro Frontends/Module Federation + Core Web Vitals + Web/Service Workers.
Nhánh SAA: GĐ16 → GĐ28 → GĐ29 → GĐ30 → GĐ31 → GĐ32 → GĐ33. Đọc GĐ01/GĐ15 để củng cố network/deploy; tham khảo GĐ19/GĐ21 khi học resilience và trade-offs. GĐ32 dùng lại NAT/endpoint của GĐ29 và throttling của GĐ30; bảng phủ ở GĐ28 là đầu vào cho ngân hàng câu hỏi GĐ33. Không cần học hết Frontend/AI trước khi học SAA.
Ngoài phạm vi có chủ đích: Terraform/IaC chuyên sâu, service mesh, event sourcing, CRDT — lý do và thời điểm nên học. Nhánh SAA giới thiệu CloudFormation/IaC ở mức khái niệm và phục hồi, chưa có khóa triển khai IaC riêng.
Nguyên tắc#
- Mỗi khái niệm gắn 1 đoạn code chạy được — không đọc chay.
- Build > tutorial: các dự án nối tiếp, nâng cấp cùng 1 codebase → capstone AI SaaS.
- Đọc log & stack trace kỹ — backend không có DevTools.
- Tận dụng lợi thế FE: hiểu API dưới góc client → thiết kế API tốt hơn.
- Chứng minh, đừng tin. Mỗi khẳng định về hệ thống của bạn phải có một test, một số đo, hoặc một lần diễn tập đứng sau.
- Biết vì sao KHÔNG dùng cũng quan trọng như biết dùng. Nhiều giai đoạn (GĐ06, GĐ08, GĐ18, GĐ20) kết thúc bằng lý do để không áp dụng — đó là phần đáng giá nhất khi phỏng vấn.
Ước lượng: Phần 0 học xen kẽ ~3–4 tháng; Phần 1 ~4–5 tháng; Phần 2 ~2–3 tháng; Phần 3 ~1–1,5 tháng; Phần 4 ~2–3 tháng (~1–2h/ngày). Phần 5 phụ thuộc project và mức độ cần áp dụng Micro Frontend. Phần 6 có nhịp học gợi ý 10 tuần sau AWS căn bản; điều chỉnh theo nền tảng và thời gian lab, không bảo đảm thời điểm sẵn sàng thi.
Bảo trì tài liệu#
Quy ước bắt buộc: mỗi file lẻ mở đầu bằng đúng một dòng # <tiêu đề> rồi một dòng trống.