Trang chủ Khóa học Khóa học bổ trợ

System Design cho Developer: Tư duy kiến trúc hệ thống từ nền tảng đến thực chiến

Khóa học System Design dành cho developer 2–7 năm kinh nghiệm. Từ database, caching, microservices đến bảo mật và case study thực tế. Học để thiết kế được, không chỉ code được.

0 học viên
Video
10 lượt xem
Bạch Ngọc Toàn

Giảng viên

Bạch Ngọc Toàn
1,900,000đ
Chưa mở ghi danh
Thêm vào yêu thích
Loại hình học Video
Bài học 0 bài
Truy cập Trọn đời
Thiết bị Mọi thiết bị

Khóa học bao gồm:

  • Video Full HD
  • Tài liệu học tập
  • Source code mẫu
  • Hỗ trợ Q&A
  • Cập nhật miễn phí
System Design cho Developer: Tư duy kiến trúc hệ thống từ nền tảng đến thực chiến

Nội dung khóa học

0 bài học • giờ học

Mô tả khóa học

System Design cho Developer: Tư duy kiến trúc hệ thống từ nền tảng đến thực chiến

Bạn code tốt, deliver được task, nhưng mỗi khi senior hỏi "tại sao chọn cách này mà không phải cách kia?" — câu trả lời chỉ là "em thấy ổn". Đó chính xác là dấu hiệu bạn đang thiếu tư duy system design.

Khóa học này không dạy bạn thêm một framework mới. Nó dạy bạn nhìn vấn đề ở tầng cao hơn — thiết kế hệ thống có thể scale, bảo mật được, và quan trọng hơn, giải thích được tại sao bạn thiết kế như vậy.


Khóa học này dành cho ai?

Developer có 2–7 năm kinh nghiệm, đã code thành thạo nhưng chưa bao giờ phải nghĩ đến chuyện hệ thống sẽ hoạt động thế nào khi có 1 triệu người dùng, khi database bị overload, khi một service chết giữa đêm.

Nếu bạn đang nhắm đến senior/lead position, chuẩn bị phỏng vấn công ty nước ngoài, hoặc đơn giản là muốn thoát khỏi vòng lặp "code theo yêu cầu, không hiểu bức tranh lớn" — đây là khóa học phù hợp.


Bạn sẽ học được gì?

Tư duy trade-off — thứ phân biệt senior và junior thực sự

Không có kiến trúc nào đúng tuyệt đối. SQL vs NoSQL, microservices vs monolith, cache-aside vs write-through — mỗi lựa chọn đều có đánh đổi. Khóa học dạy bạn phân tích trade-off thay vì chọn theo bản năng hoặc copy từ tutorial.

Mỗi concept đều có bảng so sánh rõ ràng: khi nào dùng, khi nào không dùng, và tại sao. Không nói chung chung.

Building blocks của mọi hệ thống lớn

Phần nền tảng cover đủ những thứ bạn cần biết để xây hệ thống thực tế:

  • Database: Indexing đúng cách, replication, sharding, CAP theorem trong thực tế (không phải lý thuyết thuần túy)

  • Caching: Redis patterns, cache invalidation, cache stampede — những lỗi mà ai cũng gặp khi làm thật

  • Message Queue: Kafka vs RabbitMQ, idempotency, exactly-once delivery

  • Load Balancing: Layer 4 vs Layer 7, circuit breaker, health check

Scalability — thiết kế để mở rộng được

Stateless service design, session management khi scale ngang, rate limiting phân tán, capacity planning. Bạn sẽ biết cách ước lượng hệ thống sẽ chạm giới hạn ở đâu trước khi nó xảy ra — không phải sau khi production đã cháy.

Bảo mật — thứ hầu hết khóa system design bỏ qua

Đây là điểm khác biệt lớn nhất của khóa này. Phần bảo mật không phải phần phụ thêm cho có — nó là một phần riêng 10 giờ, cover từ authentication/authorization, JWT pitfalls, API security theo OWASP, đến secret management và infrastructure security.

Thực tế là hầu hết khóa system design trên thị trường dừng lại ở scalability rồi kết thúc. Một hệ thống scale được nhưng bị tấn công vào lúc 2 giờ sáng thì không có ý nghĩa gì.

10 case study thực tế — từ URL shortener đến Uber

Đây là phần học viên nhớ lâu nhất. Mỗi case study đi theo flow hoàn chỉnh: yêu cầu → ước lượng → thiết kế sơ bộ → deep dive → trade-off discussion.

10 hệ thống được chọn có chủ đích để cover nhiều dạng bài toán khác nhau:

Case Study

Concept chính

URL Shortener

Caching + database choice

News Feed (Facebook)

Fan-out on write vs read

Notification System

Async, delivery guarantee

Distributed File Storage (S3)

Chunking, resumable upload

Video Streaming (YouTube)

Encoding pipeline, CDN

Chat System (WhatsApp)

WebSocket, message ordering

Payment System

Idempotency, distributed transaction

Ride-sharing (Uber)

Geo-indexing, real-time matching


Cấu trúc khóa học

~60–70 giờ học, bao gồm lý thuyết, lab thực hành sau mỗi module, và case study.

Phần 0 — Foundation (~3h): Mindset thiết kế hệ thống, framework RESHADED, phân biệt functional vs non-functional requirements.

Phần 1 — Building Blocks (~15h): Network, database, caching, message queue, load balancing.

Phần 2 — Scalability (~12h): Horizontal scaling, microservices, rate limiting, capacity planning.

Phần 3 — Security (~10h): Authentication, API security, data security, infrastructure security.

Phần 4 — Reliability & Observability (~8h): Fault tolerance, consistency trade-off, monitoring, distributed tracing.

Phần 5 — Case Studies (~15h): 10 hệ thống thực tế.

Phần 6 — Interview Preparation (~8h): Framework 45 phút, mock interview có walkthrough, lỗi phổ biến, câu hỏi theo công ty.


Thứ tự học tùy theo mục tiêu

Không nhất thiết phải học tuần tự từ đầu đến cuối:

  • Mới hoàn toàn với system design: Phần 0 → 1 → 2 → 3 → 5 → 6

  • Đã có base, chuẩn bị interview: Phần 0 → 3 → 4 → 5 → 6

  • Focus bảo mật: Phần 0 → 1 (Module 1.2, 1.3) → 3 → 5 (Case study Payment System)


Điều khóa học này không hứa

Học xong không có nghĩa là bạn sẽ thiết kế được hệ thống như Google ngay lập tức. System design là kỹ năng tích lũy qua thực hành thực tế, không phải qua một khóa học. Khóa này cho bạn nền tảng tư duy và công cụ — phần còn lại là bạn phải tự áp dụng vào dự án thực tế.

Điều khóa học này đảm bảo: bạn sẽ hiểu tại sao một hệ thống được thiết kế như vậy, biết đặt câu hỏi đúng, và không còn đưa ra quyết định kiến trúc chỉ vì "thấy ổn".


Bắt đầu học

Truy cập tedu.com.vn để xem chi tiết và đăng ký khóa học System Design for Developers.

Khóa học liên quan

Quản lý source code trong dự án với GIT
📹 Video
Miễn phí
Khóa học bổ trợ
5.0 (2)

Quản lý source code trong dự án với GIT

Git là một hệ quản trị mã nguồn đang được ưa chuộng và sử dụng rộng rãi hiện nay. Được phát triển năm 2006 bởi Linus Tovarld, cha đẻ của Linux.

29,384 lượt xem
0 bài học
Miễn phí
Xem chi tiết
Kỹ thuật Unit test cho .NET Developer
📹 Video
Miễn phí
Khóa học bổ trợ

Kỹ thuật Unit test cho .NET Developer

TEDU xin giới thiệu với các bạn khóa học Kỹ thuật dành cho .NET Developer sử dụng framework xUnit trên .NET Core.

24,216 lượt xem
0 bài học
Miễn phí
Xem chi tiết
Truy vấn LINQ từ cơ bản đến nâng cao
📹 Video
Miễn phí
Khóa học bổ trợ

Truy vấn LINQ từ cơ bản đến nâng cao

LINQ là ngôn ngữ truy vấn đa năng mà chúng ta cần sử dụng chúng ở tất cả mọi nơi trong ứng ụng .NET. Nhưng nhiều bạn chưa có kiến thức cũng như kỹ năng để hiểu rõ về nó và để viết được các câu LINQ tối ưu.

29,604 lượt xem
0 bài học
Miễn phí
Xem chi tiết
Triển khai CI/CD với Azure DevOps
📹 Video
Miễn phí
Khóa học bổ trợ
0.0 (2)

Triển khai CI/CD với Azure DevOps

Khóa học hướng dẫn triển khai CI CD với Azure DevOps sẽ cho bạn kỹ năng sử dụng Azure Devops bao gồm từ lúc quản lý source code trên Git đến xây dựng process tự động với Azure Pipeline.

31,710 lượt xem
0 bài học
Miễn phí
Xem chi tiết