Thực chiến thiết kế hệ thống Frontend tại các công ty Big Tech Hoa Kỳ: Dành cho những nhà phát triển Frontend không muốn chỉ dừng lại ở mức người thực thi đơn thuần

Khóa học này rèn luyện tư duy thiết kế hệ thống frontend thông qua các trường hợp dịch vụ thực tế như bảng tin Threads, giỏ hàng Amazon, giao diện phát trực tuyến Netflix, chỉnh sửa cộng tác trên Google Docs, Micro Frontend, Agentic UI và Observability.

(4.5) 13 đánh giá

350 học viên

Độ khó Cơ bản

Thời gian Không giới hạn

frontend
frontend
system-design
system-design
AI
AI
frontend
frontend
system-design
system-design
AI
AI

Đánh giá từ những học viên đầu tiên

4.5

5.0

Bora Ahn

33% đã tham gia

Đây là lớp học giúp mở rộng tầm nhìn.

5.0

최정은

41% đã tham gia

Đây là khóa học đề cập đến những chủ đề mà bất kỳ ai khi làm việc cũng từng ít nhất một lần trăn trở và thử áp dụng theo cách riêng của mình. Tuy nhiên, tôi không ngờ rằng những khái niệm vốn dĩ chỉ biết một cách mơ hồ lại được giải thích thông qua các ví dụ và tài liệu cụ thể, hệ thống đến thế. Suốt cả buổi học, tôi liên tục có những khoảnh khắc kiểu như "À, hóa ra nó được đúc kết lại như thế này". Nếu bạn là người đã có kinh nghiệm thực tế, nội dung sẽ không quá xa lạ, nhưng chính vì vậy mà bạn lại càng có thể nhận ra được nhiều điều giá trị hơn. Những thứ mà bấy lâu nay tôi chỉ biết và sử dụng một cách lờ mờ đã được ngôn ngữ hóa và cấu trúc hóa một cách rõ ràng thông qua khóa học này. Dù bạn ở mức kinh nghiệm nào, tôi cũng hy vọng bạn hãy thử nghe một lần. Tôi cực kỳ đề xuất khóa học này.

5.0

망고

74% đã tham gia

Thật tuyệt vời. Là một lập trình viên Front-end 5 năm kinh nghiệm, tôi cảm thấy những phần mình còn thiếu sót và bế tắc bấy lâu nay đã được giải tỏa phần nào thông qua khóa học này. Tôi thực sự khuyên các bạn nên dồn hết tâm sức để thực hiện các nhiệm vụ (mission) xen kẽ trong khóa học dù có khó khăn đến đâu. Bởi vì bạn sẽ nhận được những phản hồi cực kỳ chi tiết từ giảng viên đấy! Rất cảm ơn bạn đã tạo ra khóa học này! Nếu bạn có kế hoạch cho các khóa học khác, nhất định hãy ra mắt thêm nhé. Xin cảm ơn!

Bạn sẽ nhận được điều này sau khi học.

  • Trong các buổi phỏng vấn thiết kế hệ thống Frontend, bạn có thể sắp xếp các yêu cầu và xây dựng câu trả lời nhất quán từ kiến trúc, luồng dữ liệu, cấu trúc thành phần cho đến chiến lược vận hành.

  • Trong các ứng dụng web quy mô lớn, tôi có thể lựa chọn các chiến lược render như CSR, SSR, SSG, ISR, Streaming phù hợp với từng tình huống và giải thích được các sự đánh đổi (trade-off) của chúng.

  • Có thể phân biệt giữa Local State, Global State, Server State, URL State, Cache State và thiết kế cấu trúc quản lý trạng thái cho các màn hình phức tạp.

  • Vượt xa khỏi việc chỉ là một nhà phát triển triển khai giao diện đơn thuần, bạn có thể rèn luyện tư duy của một kiến trúc sư Frontend - người giúp người dùng có thể hiểu và vận hành các sản phẩm cũng như hệ thống phức tạp.

  • Bạn có thể viết tài liệu thiết kế hệ thống frontend thực tiễn bao gồm hiệu suất, khả năng truy cập, bảo mật, kiểm thử, khả năng quan sát và chiến lược triển khai.

  • Có thể cấu trúc UI của các lĩnh vực phức tạp dưới góc nhìn frontend, chẳng hạn như nền tảng phân tích chi phí linh kiện tên lửa kiểu SpaceX, bảng tin thời gian thực kiểu Threads, hay bảng điều khiển vận hành robot kiểu Figure AI.

  • Trong buổi phỏng vấn thiết kế hệ thống frontend, bạn có thể sắp xếp các yêu cầu và xây dựng một câu trả lời nhất quán từ kiến trúc, luồng dữ liệu, cấu trúc thành phần cho đến chiến lược vận hành.

Lý do các kỹ sư frontend khó tăng lương không phải vì họ không biết.

Vấn đề là vì nhiều nhà phát triển frontend
vẫn bị đánh giá là “người triển khai màn hình”.

Và trong thời đại AI viết mã nguồn,
đánh giá này đang ngày càng trở nên nguy hiểm hơn.

Việc triển khai nút bấm, giao diện thẻ, kết nối API, màn hình CRUD và quản lý trạng thái đơn giản
đã và đang bị AI nhanh chóng bắt kịp.

Trong tương lai, điểm khác biệt của một kỹ sư Frontend
không nằm ở việc “triển khai nhanh đến mức nào”
mà là ở việc liệu có thể thiết kế các yêu cầu sản phẩm phức tạp thành một hệ thống hay không..


Để đạt được mức lương cao hơn và vị trí tốt hơn,
bạn phải có khả năng phân tích và thiết kế các yêu cầu phức tạp thành trạng thái, luồng dữ liệu, chiến lược render, hiệu suất, khả năng quan sát và cấu trúc triển khai.


Khóa học này sẽ huấn luyện tư duy thiết kế hệ thống Frontend thông qua các ví dụ thực tế theo phong cách Big Tech,
từ Threads feed, giỏ hàng Amazon, UI streaming Netflix,
chỉnh sửa cộng tác trên Google Docs, Micro Frontend, tối ưu hóa hiệu suất cho đến Observability.


Khóa học này không chỉ dừng lại ở việc phát triển giao diện đơn thuần, mà còn hướng dẫn cách cấu trúc và thiết kế các yêu cầu dịch vụ phức tạp dưới góc nhìn thiết kế hệ thống frontend.

Học viên sẽ được rèn luyện tư duy thiết kế kiến trúc UI quy mô lớn thông qua các ví dụ thực tế như: bảng tin thời gian thực kiểu Threads, danh sách sản phẩm và giỏ hàng kiểu Amazon, giao diện phát video trực tuyến của Netflix/YouTube, giao diện chỉnh sửa cộng tác của Google Docs, nền tảng phân tích chi phí linh kiện tên lửa kiểu SpaceX, và bảng điều khiển vận hành robot kiểu Figure AI.

Trong khóa học, bạn sẽ được học từng bước về các yếu tố cốt lõi bắt buộc phải cân nhắc trong thiết kế hệ thống frontend, từ phân tích yêu cầu, chiến lược render, luồng dữ liệu, quản lý trạng thái, cấu trúc component, tối ưu hóa hiệu suất, cho đến khả năng tiếp cận, bảo mật, kiểm thử, khả năng quan sát (observability) và chiến lược triển khai.

Khóa học này có thể được ứng dụng trong các lĩnh vực như Big Tech Hoa Kỳ, startup toàn cầu, SaaS doanh nghiệp, bảng điều khiển thời gian thực, bảng điều khiển vận hành, nền tảng quan sát, và UI hạ tầng AI/Robot/Vũ trụ. Mục tiêu là phát triển năng lực thiết kế các hệ thống phức tạp thành giao diện mà người dùng có thể hiểu và vận hành được, vượt xa khả năng triển khai đơn thuần.

Lý do tôi lập kế hoạch cho bài giảng này là vì tôi tin rằng ngay cả trong thời đại AI ngày càng viết nhiều mã nguồn hơn, thì khả năng thấu hiểu các lĩnh vực phức tạp và chuyển đổi các yêu cầu thành thiết kế vẫn là điểm khác biệt mạnh mẽ của người phát triển, tức là tạo ra giá trị gia tăng cao.


Khóa học này được tạo ra nhằm giúp các học viên không chỉ dừng lại ở một nhà phát triển tạo ra màn hình đơn thuần, mà còn trưởng thành thành một kỹ sư Frontend hiểu rõ toàn bộ sản phẩm và hệ thống, đồng thời khơi dậy sự vĩ đại bên trong mỗi học viên.

Dành cho những người như thế này

Tôi cảm thấy mình vẫn luôn chỉ được đánh giá là một người triển khai UI.

Nhà phát triển có thể hiện thực hóa Front-end nhưng muốn được đánh giá ở cấp độ cao hơn

Tôi muốn tăng lương với tư cách là một nhà phát triển Front-end, nhưng không biết nên học thêm điều gì.

Các nhà phát triển đang chuẩn bị cho các buổi phỏng vấn thiết kế hệ thống (System Design) Frontend/Fullstack tại các công ty Big Tech Mỹ, startup và các tập đoàn công nghệ toàn cầu.

Tôi muốn được công nhận về năng lực thiết kế hệ thống giống như một nhà phát triển backend/hạ tầng.

Các nhà phát triển muốn rèn luyện kiến trúc UI quy mô lớn dựa trên các ví dụ dịch vụ thực tế như Threads, Amazon, Netflix, Google Docs, SpaceX, Figure AI.

Sau khi học xong, bạn sẽ thay đổi như thế này

Trước khi nghe bài giảng, khi nhìn thấy một màn hình phức tạp, bạn có thể sẽ nghĩ đến các component (thành phần) đầu tiên.

Nhưng sau khi học xong, câu hỏi đầu tiên của bạn sẽ thay đổi.

Thay vì chỉ đơn thuần là “Nên tạo component nào?”, bạn sẽ nhìn nhận theo hướng “Nên thiết kế cấu trúc trải nghiệm sản phẩm này như thế nào để có thể duy trì lâu dài, hoạt động nhanh chóng và có thể truy vết khi phát sinh vấn đề?”.

Sự khác biệt này tạo nên tầm vóc và chiều sâu cho học viên, đồng thời giúp họ có được vai trò và trách nhiệm để đảm nhận những vấn đề lớn hơn trong công việc thực tế.

Bạn sẽ học được những nội dung này

1. Đây là bài giảng thay đổi tiêu chuẩn đánh giá của một nhà phát triển Front-end

Nếu bạn đặt mục tiêu đạt mức lương cao hơn và vị trí tốt hơn với vai trò Frontend, chỉ đơn thuần có khả năng hiện thực hóa UI nhanh hơn là chưa đủ.

Lý do khiến nhiều nhà phát triển front-end bị chững lại tại một thời điểm nào đó trong quá trình phát triển không phải vì họ thiếu năng lực.
Đó là bởi vì trong mắt công ty và người phỏng vấn, họ vẫn chỉ được xem là “người hiện thực hóa màn hình”.

Trong thời đại mà AI có thể nhanh chóng tạo ra các component, form, giao diện thẻ (card UI) và mã kết nối API, đánh giá này càng trở nên nguy hiểm hơn.
Nếu chỉ dựa vào năng lực triển khai đơn thuần, bạn sẽ ngày càng dễ bị so sánh và có thể bị đẩy xuống những vai trò có giá trị thấp hơn.

Kỹ sư Frontend ở cấp độ cao hơn không phải là người tạo ra màn hình, mà là người cấu trúc hóa các yêu cầu phức tạp.

Bạn phải có khả năng thiết kế từ việc xác định những trạng thái nào đang tồn tại, nguồn gốc của dữ liệu nằm ở đâu, màn hình nào cần SSR và màn hình nào cần được tách biệt bằng CSR, cho đến việc xác định race condition xảy ra ở đâu và theo dõi các vấn đề sau khi triển khai bằng telemetry nào.

Khóa học này được tạo ra để đáp ứng chính xác các tiêu chuẩn đánh giá đó.

Đây không phải là bài giảng để ghi nhớ thêm nhiều kiến thức frontend, mà là bài giảng nhằm thay đổi tư duy để học viên được đánh giá là một kỹ sư frontend có khả năng hiểu và thiết kế toàn bộ sản phẩm cũng như hệ thống.


2. Không phải là học thuộc lòng lý thuyết, mà là hiểu ngược lại từ các ví dụ dịch vụ thực tế

Điều quan trọng trong thiết kế hệ thống frontend không phải là việc biết nhiều thuật ngữ.

Điều quan trọng là khi nhìn vào một màn hình phức tạp, câu hỏi đặt ra sẽ thay đổi.

Trước khi nghe bài giảng, bạn có thể suy nghĩ như thế này.

“Màn hình này nên được chia thành những component nào?”

Tuy nhiên, sau bài giảng, câu hỏi sẽ thay đổi.

“Trải nghiệm người dùng cốt lõi của màn hình này là gì?”
“Dữ liệu nào nhất thiết phải chính xác?”
“Trạng thái nào có thể tạm thời bị cũ (stale)?”
“Nguồn gốc của trạng thái là server hay client?”
“Làm thế nào để phản hồi chậm không ghi đè lên UI mới nhất?”
“Hiệu suất nên được định nghĩa bằng con số nào?”
“Nếu có vấn đề phát sinh trong quá trình vận hành, sẽ truy vết nguyên nhân bằng dữ liệu nào?”

Khóa học này không bắt bạn phải học thuộc lòng những lý thuyết khó nhằn trước.

Bắt đầu từ các ví dụ dịch vụ thực tế như Threads feed, giỏ hàng Amazon, giao diện phát trực tuyến Netflix, chỉnh sửa cộng tác trên Google Docs, Micro Frontend và Observability.

Đầu tiên, chúng tôi phân tích trải nghiệm sản phẩm từ góc nhìn của người dùng, sau đó giải thích ngược lại lý do tại sao cần quản lý trạng thái, luồng dữ liệu, chiến lược render, tối ưu hóa hiệu suất và khả năng quan sát để tạo ra trải nghiệm ổn định đó.

Vì vậy, học viên sẽ được rèn luyện khả năng giải thích lý do tại sao cấu trúc đó lại cần thiết, thay vì chỉ dừng lại ở việc "làm thế nào để triển khai".

3. Thời đại AI viết code, Frontend đang chuyển mình sang Agentic UI

AI đã có thể viết được rất nhiều mã nguồn front-end.

Các nút bấm, biểu mẫu, thẻ UI, màn hình CRUD, mã gọi API và các kiểu dáng cơ bản đang được tạo ra ngày càng nhanh chóng hơn.

Vì vậy, nếu chỉ dựa vào năng lực triển khai đơn thuần, lợi thế cạnh tranh của nhà phát triển frontend có thể bị yếu đi.

Nhưng có một sự thay đổi thậm chí còn lớn hơn thế.

AI không chỉ thay đổi cách thức phát triển, mà còn đang thay đổi chính cấu trúc UI của sản phẩm.

Trong giao diện người dùng (UI) truyền thống, người dùng phải trực tiếp thực hiện tất cả các bước.

Nhập từ khóa tìm kiếm, chọn bộ lọc, kiểm tra kết quả, nhấn nút và di chuyển sang màn hình tiếp theo.

Nhưng trong Agentic UI, người dùng sẽ nói ra mục tiêu trước.

“Hãy phân tích vấn đề này giúp tôi.”
“Hãy so sánh dữ liệu này giúp tôi.”
“Hãy tự động xử lý công việc này giúp tôi.”
“Hãy xem kết quả này và đề xuất hành động tiếp theo cho tôi.”

Khi đó, AI sẽ giải thích mục tiêu, lựa chọn dữ liệu và công cụ cần thiết, rồi thực hiện nhiều bước khác nhau.

Vai trò của frontend càng trở nên quan trọng hơn ở đây.

Phải cho người dùng thấy AI đang làm gì.
Phải thể hiện kết quả trung gian sao cho người dùng có thể hiểu được.
Các hành động nguy hiểm phải nhận được sự chấp thuận của người dùng.
Các lệnh gọi công cụ bị lỗi phải có khả năng khôi phục.
Khi kết quả của AI không chắc chắn, không được xác nhận ngay mà phải hiển thị ở trạng thái có thể kiểm tra được.

Trong khóa học này, chúng tôi cũng sẽ đề cập đến việc thiết kế Agentic UI cho những trải nghiệm sản phẩm AI-native như thế này.

Chúng ta sẽ cùng tìm hiểu cách mô hình hóa trạng thái chạy của Agent, cách hiển thị UI gọi công cụ (tool-calling), cách xử lý phản hồi dạng luồng (streaming response), cách thiết kế luồng phê duyệt của người dùng, cho đến cách thể hiện kết quả do AI tạo ra dưới dạng giao diện có thể kiểm chứng được.

Trong kỷ nguyên AI, công việc của các kỹ sư frontend không phải là đang ít đi mà là đang thay đổi.

Việc triển khai đơn thuần có thể được tự động hóa nhiều hơn,
nhưng khả năng thiết kế trải nghiệm sản phẩm phức tạp nơi AI và người dùng cùng làm việc với nhau đang trở nên quan trọng hơn bao giờ hết.

Khóa học này được thiết kế để phù hợp với sự thay đổi đó, giúp các kỹ sư frontend phát triển vượt xa vai trò của một người triển khai UI đơn thuần để trở thành những kỹ sư thiết kế trải nghiệm sản phẩm AI-native.

4. Huấn luyện thiết kế hệ thống frontend thông qua các ví dụ thực tế theo phong cách Big Tech

Khóa học này không chỉ giải thích những khái niệm trừu tượng.

Huấn luyện thiết kế hệ thống frontend dựa trên những vấn đề UI phức tạp thường gặp trong các dịch vụ thực tế.

Trong bảng tin phong cách Threads, chúng ta không chỉ đơn thuần hiển thị danh sách bài viết, mà còn xử lý các vấn đề như cuộn vô hạn (infinite scroll), loại bỏ trùng lặp, phản hồi lạc quan (optimistic reaction), phản hồi cũ (stale response), cập nhật thời gian thực và bảo toàn vị trí đang đọc.

Với thương mại điện tử phong cách Amazon, mọi thứ không chỉ dừng lại ở việc tạo danh sách sản phẩm và giỏ hàng.
Nó còn xử lý cả việc hợp nhất giỏ hàng của khách vãng lai, thay đổi giá, kiểm tra kho hàng, trạng thái thanh toán không xác định (unknown), idempotencyKey và cả lỗi hydration mismatch.

Trong giao diện phát trực tuyến kiểu Netflix/YouTube, mọi thứ không chỉ dừng lại ở việc sử dụng thẻ <video>.
Nó còn xử lý việc lưu đệm (buffering), trạng thái phát, chất lượng mạng, chuyển đổi độ phân giải và phục hồi sau lỗi dưới dạng các mô hình trạng thái.

Trong UI chỉnh sửa cộng tác kiểu Google Docs, người ta không chỉ tạo ra các ô nhập liệu, mà còn xử lý trạng thái chỉnh sửa cục bộ và trạng thái đồng bộ hóa máy chủ, xử lý xung đột, phản ánh thời gian thực, cũng như sự cân bằng giữa latency (độ trễ) và consistency (tính nhất quán).

Trong Micro Frontend, bạn không chỉ học cách chia nhỏ ứng dụng.
Chúng ta sẽ cùng xem xét cả đơn vị triển khai của tổ chức, trách nhiệm của nhóm, ranh giới giữa shell và remote, shared dependency, cho đến tính nhất quán của design system.

Thông qua những ví dụ này, học viên sẽ được rèn luyện tư duy thiết kế hệ thống frontend không chỉ là lý thuyết đơn thuần, mà là một cách tư duy để giải quyết các vấn đề thực tế trong dịch vụ.

5. Quản lý trạng thái cũng không phải là học cách sử dụng thư viện, mà là học cách thiết kế trạng thái

Trong khóa học này, chúng ta sẽ học cách mô hình hóa các trạng thái UI phức tạp bằng phương pháp X-M, vượt qua những giới hạn của việc kết hợp các trạng thái boolean.

Phương pháp X-M (trong đó "X-" sẽ không được tiết lộ tại đây) là một trong những phương pháp mà tôi đã đặc biệt dự thính thông qua một người quen tại một trong các trường đại học UC, và đã thảo luận với những người bạn gốc Ấn trong quá trình tham gia chương trình Big Tech Fellowship. Tôi quyết định đưa nội dung này vào chương trình giảng dạy vì tin rằng đây sẽ là một phương pháp hữu ích khi lập tài liệu, cộng tác hoặc thiết kế trong công ty

Nhưng điều quan trọng hơn chính là “cái gì sẽ được xem là trạng thái”.

Nút Thích có thể không chỉ đơn giản kết thúc bằng một isLiked.
Số lượng giỏ hàng có thể không chỉ đơn giản kết thúc bằng một quantity.
Trạng thái thanh toán có thể không chỉ đơn giản kết thúc bằng loading, success, error.

Trong các dịch vụ thực tế, trạng thái còn phức tạp hơn thế nữa.

Có trạng thái mà người dùng nhìn thấy trước tiên, có trạng thái mà client hiển thị một cách lạc quan (optimistic), có trạng thái mà server đã xác nhận, có trạng thái cần phải hoàn tác khi thất bại, và có cả trạng thái chưa xác định (unknown) khi chưa thể biết được kết quả.

Học viên sẽ không chỉ đơn thuần học "cách sử dụng thư viện quản lý trạng thái", mà sẽ học cách thiết kế luồng trạng thái có thể dự đoán được cho những trải nghiệm sản phẩm phức tạp.

6. Tối ưu hóa hiệu suất cũng không phải là các mẹo vặt, mà được xử lý như một yêu cầu của hệ thống

Tối ưu hóa hiệu suất frontend không đơn thuần chỉ là vấn đề lazy loading hình ảnh hay split code.

Trong dịch vụ thực tế, trước tiên bạn phải định nghĩa xem sẽ đảm bảo trải nghiệm người dùng nào thông qua những con số cụ thể nào.

Trong trang chi tiết sản phẩm, LCP có thể là yếu tố quan trọng.
Trong thanh tìm kiếm tự động hoàn thành, Time to First Suggestion có thể là yếu tố quan trọng.
Trong bảng tin thời gian thực, sự ổn định khi cuộn và việc loại bỏ trùng lặp có thể là yếu tố quan trọng.
Trong giao diện video, buffering rate và playback recovery time có thể là yếu tố quan trọng.
Trong giao diện chỉnh sửa cộng tác, độ trễ nhập liệu (latency) và độ trễ đồng bộ hóa có thể là yếu tố quan trọng.

Trong khóa học này, chúng ta không tiếp cận hiệu suất một cách mơ hồ theo kiểu “hãy làm cho nó nhanh hơn”.

Chúng ta sẽ cùng xem xét chỉ số hiệu suất nào là quan trọng ở màn hình nào, nên lựa chọn chiến lược rendering nào, trạng thái và luồng dữ liệu nào tạo ra nút thắt cổ chai về hiệu suất, cho đến cả cách quan sát hiệu suất của người dùng thực tế sau khi triển khai.

Vì vậy, học viên sẽ không chỉ học những mẹo tối ưu hóa đơn thuần, mà còn rèn luyện được khả năng thiết kế hiệu suất phù hợp với yêu cầu của sản phẩm.

7. Học về thiết kế Frontend tính đến cả vận hành và khả năng quan sát (Observability)

Những vấn đề Frontend quan trọng trong thực tế không chỉ phát sinh trước khi triển khai.

Ngược lại, những vấn đề thực sự thường phát sinh sau khi triển khai.

Nút bấm có thể không hoạt động chỉ trên một số trình duyệt nhất định.
Trạng thái thanh toán có thể rơi vào tình trạng unknown trong một số môi trường mạng cụ thể.
Tỷ lệ rollback giỏ hàng có thể đột ngột tăng cao ở một phiên bản nhất định.
Phản hồi tìm kiếm trở nên chậm chạp và lượng stale response có thể tăng lên.
Lỗi hydration mismatch có thể chỉ xảy ra trên một số trang cụ thể.

Lúc này, chỉ đơn thuần nói rằng “tôi đã gắn công cụ theo dõi lỗi” là chưa đủ.

Kỹ sư Frontend cần phải có khả năng thiết kế xem nên thu thập sự kiện nào, nên ghi lại quá trình chuyển đổi trạng thái nào, và chỉ số nào cho thấy vấn đề trong trải nghiệm người dùng.

Trong khóa học này, Observability không được xem là việc triển khai đơn giản như cài đặt Sentry.

Chúng tôi nhìn nhận hệ thống frontend dưới cấu trúc có thể vận hành được thông qua các chỉ số như RUM, error tracking, telemetry contract, nhật ký chuyển đổi trạng thái, rollback rate, stale response ignored count, và payment unknown rate.

Phải có quan điểm này, nhà phát triển frontend mới có thể phát triển thành một kỹ sư chịu trách nhiệm về chất lượng sản phẩm ngay cả sau khi triển khai, chứ không chỉ đơn thuần là người thực thi mã nguồn.

Đây không phải là một khóa học clone coding thông thường, mà tập trung vào thiết kế hệ thống frontend.

Khóa học này không đơn thuần là hướng dẫn làm theo giao diện có sẵn. Chúng ta sẽ phân tích và thiết kế các dịch vụ phức tạp thực tế dưới góc nhìn của một kỹ sư Front-end, chẳng hạn như: bảng tin Threads, danh sách sản phẩm Amazon, giao diện video Netflix, soạn thảo cộng tác Google Docs, nền tảng phân tích chi phí linh kiện tên lửa kiểu SpaceX, hay bảng điều khiển vận hành robot phong cách Figure AI.


Người tạo ra khóa học này

  • Người sống sót tại Thung lũng Silicon | American Snail 

    Dựa trên kinh nghiệm và bí quyết tích lũy được tại tiền tuyến của Global Tech Scene, tôi sẽ chỉ ra con đường giúp những người không chuyên vượt qua rào cản kỹ thuật để trở thành chủ nhân của doanh nghiệp.

    • Hiện là người sáng lập startup đại lý lập trình AI tại Thung lũng Silicon

      • Vận hành công cụ AI tự phát triển 'Snailer CLI' (16K+ lượt tải xuống)

      • Được chọn cho chương trình Google for Startups Program

    • Cựu kỹ sư tại các tập đoàn công nghệ lớn (Big Tech) và startup triển vọng tại Mỹ

      • Đã lọt vào vòng cuối cùng của Amazon, nhưng từ bỏ để khởi nghiệp

      • Kỹ sư startup AI Fintech tại Thung lũng Silicon

      • OpenAI / Meta / Apple / Adobe / Amazon Full-stack Fellowship

      • Phát triển công cụ tìm kiếm cổng thông tin trong nước, Fintech

      • Phát triển AR/B2B/SDK cho startup AI

    • Năng lực đào tạo đã được kiểm chứng

Kế hoạch cập nhật Case Study Phần 3

Phần 3 hiện đang ở trạng thái riêng tư và đang được sản xuất tuần tự, dự kiến sẽ được cấu trúc xoay quanh các bài nghiên cứu tình huống (case study) thông qua các ví dụ thực tế về dịch vụ Big Tech của Mỹ dựa trên những nội dung đã học cho đến nay.

Hướng chuẩn bị hiện tại như sau.

  • Thiết kế hệ thống frontend bảng tin mạng xã hội thời gian thực theo phong cách Meta Threads

  • Thiết kế bảng tin hình ảnh và tin (story) của Instagram

  • Thiết kế danh sách sản phẩm và giỏ hàng thương mại điện tử Amazon

  • Thiết kế UI phát trực tuyến video Netflix/YouTube

  • Thiết kế hệ thống chat thời gian thực Slack/Messenger

  • Thiết kế chỉnh sửa cộng tác trên Google Docs/Spreadsheet

  • X.com Thiết kế hệ thống bảng tin dịch vụ

  • Thiết kế dựa trên vị trí thời gian thực kiểu Uber/Lyft

  • Thiết kế nền tảng phân tích chi phí linh kiện tên lửa phong cách SpaceX

  • Thiết kế Starlink / SpaceX Observability Control Plane

  • Thiết kế bảng điều khiển vận hành robot nhân hình phong cách Figure AI

  • Thiết kế Space Data Center / Orbital Data Center Management Console

  • Thiết kế Front-end cho Hệ thống Giám sát Nội bộ Tên lửa (Rocket Internal Systems Monitoring)

Mục tiêu của Phần 3 không đơn thuần chỉ là "có thể tạo ra dịch vụ như thế này", mà là huấn luyện cách phân chia tư duy từ yêu cầu, kiến trúc, mô hình dữ liệu, giao diện cho đến hiệu suất, khả năng quan sát và xử lý sự cố khi nhìn vào một dịch vụ phức tạp trong thực tế.

Vì vậy, mỗi trường hợp sẽ được khai thác sâu hơn dưới góc độ thiết kế hệ thống frontend thay vì chỉ dừng lại ở việc triển khai đơn thuần.

Hiện tại, các bài giảng đang được sản xuất theo trình tự và sẽ được công khai ngay khi hoàn thành. Cảm ơn bạn đã kiên nhẫn chờ đợi.

Bạn có thắc mắc gì không?

Q1. Thiết kế hệ thống Frontend khác với phát triển Frontend thông thường như thế nào?

Phát triển Front-end thông thường thường tập trung vào việc hiện thực hóa các màn hình hoặc tính năng đã được giao. Ngược lại, thiết kế hệ thống Front-end (Front-end System Design) là quá trình phân tích yêu cầu và thiết kế toàn bộ hệ thống Front-end, bao gồm chiến lược rendering, luồng dữ liệu, quản lý trạng thái, cấu trúc component, hiệu suất, khả năng truy cập, bảo mật, kiểm thử và khả năng quan sát (observability).

Q2. Có nhất thiết phải biết React không?

Nếu có kinh nghiệm về React thì sẽ dễ hiểu hơn, nhưng đây không phải là bài giảng chỉ dành riêng cho những người biết React. Bài giảng này tập trung vào tư duy thiết kế hệ thống frontend hơn là cú pháp của một framework cụ thể.

Q4. Tôi có thể tham gia khóa học này ngay cả khi không có kinh nghiệm thiết kế hệ thống không?

Vâng. Ở phần đầu, khóa học sẽ giải thích từng bước thông qua các chiến lược cụ thể, từ việc sắp xếp yêu cầu, thiết kế kiến trúc, thiết kế dữ liệu và trạng thái, thiết kế giao diện cho đến chiến lược vận hành. Tuy nhiên, việc có kiến thức cơ bản về HTML, CSS, JavaScript và kinh nghiệm sử dụng framework frontend sẽ giúp bạn tiếp thu dễ dàng hơn nhiều, nhưng đó không phải là yêu cầu bắt buộc.

Lưu ý trước khi khóa học bắt đầu

Môi trường thực hành

Khóa học này không phụ thuộc nhiều vào một hệ điều hành cụ thể. Bạn có thể thực hành thiết kế hoặc theo dõi bài giảng thông qua Excalidraw trên mọi môi trường Windows, macOS và Linux.

Tài liệu học tập

Tài liệu bài giảng được cung cấp bao gồm ghi chú thiết kế theo từng phần, danh sách kiểm tra (checklist) thiết kế hệ thống frontend, sơ đồ kiến trúc theo từng trường hợp, ví dụ mô hình dữ liệu/trạng thái và ví dụ về cấu trúc câu trả lời phỏng vấn.

Trong trường hợp cần thiết, một số mã ví dụ, mã giả (pseudocode) hoặc ví dụ về cấu trúc component cũng sẽ được cung cấp kèm theo.

Kiến thức tiên quyết và lưu ý

  • Khuyến khích có kiến thức cơ bản về HTML, CSS, JavaScript. Sẽ tốt hơn nếu bạn đã có kinh nghiệm sử dụng một trong các frontend framework như React, Angular, Vue.

  • Việc theo học sẽ dễ dàng hơn nhiều nếu bạn có hiểu biết cơ bản về gọi API, xử lý bất đồng bộ, quản lý trạng thái và rendering của trình duyệt.

  • Khóa học này không phải là việc sao chép y hệt hệ thống nội bộ của một công ty cụ thể, mà là quá trình huấn luyện tư duy thiết kế hệ thống frontend dựa trên các loại sản phẩm đã được công bố rộng rãi và các mô hình kiến trúc thực tế.

Khuyến nghị cho
những người này

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

  • Những người muốn trở thành kỹ sư Frontend chuyên thiết kế các hệ thống phức tạp như các công ty Big Tech của Mỹ, thay vì chỉ dừng lại ở các thao tác CRUD đơn giản.

  • Những người muốn thấu hiểu kiến trúc front-end trong môi trường enterprise dựa trên không chỉ React mà còn cả Angular, C#, và .NET.

  • Những người muốn nuôi dưỡng "khả năng thấu hiểu các lĩnh vực phức tạp và cấu trúc hóa chúng thành giao diện", một kỹ năng khó bị thay thế ngay cả trong kỷ nguyên AI.

  • Nhà phát triển quan tâm đến phương pháp thiết kế sản phẩm của các công ty như SpaceX, Starlink, Tesla, Figure AI, Meta, Amazon, Netflix

Cần biết trước khi bắt đầu?

  • Cần có kiến thức cơ bản về HTML, CSS và JavaScript.

  • Sẽ rất tốt nếu bạn có kinh nghiệm sử dụng một trong các framework frontend như React hoặc Angular.

  • Không có kinh nghiệm thiết kế hệ thống cũng không sao cả

Xin chào
Đây là americasnail

Xác minh Inflearn

1,607

Học viên

81

Đánh giá

75

Trả lời

4.4

Xếp hạng

6

Các khóa học

  • Người sống sót tại Thung lũng Silicon | American Snail

    Dựa trên kinh nghiệm và bí quyết tích lũy được tại tiền tuyến của Global Tech Scene, tôi sẽ chỉ ra con đường giúp những người không chuyên vượt qua rào cản công nghệ để trở thành chủ nhân của doanh nghiệp.

    • Hiện là) Nhà sáng lập startup đại lý lập trình AI tại Thung lũng Silicon

      • Vận hành công cụ AI tự phát triển 'Snailer CLI' (hơn 16K lượt tải xuống)

      • Được lựa chọn cho chương trình Google for Startups Program

    • Cựu kỹ sư tại các tập đoàn công nghệ lớn (Big Tech) và startup triển vọng tại Mỹ

      • Đã lọt vào vòng cuối cùng của Amazon, nhưng từ bỏ để khởi nghiệp

      • Kỹ sư startup AI Fintech tại Thung lũng Silicon

      • OpenAI / Meta / Apple / Adobe / Amazon Full-stack Fellowship

      • Phát triển tại cổng thông tin công cụ tìm kiếm và fintech trong nước

      • Phát triển AR/B2B/SDK cho startup AI

    • Năng lực đào tạo đã được kiểm chứng

      • Tốt nghiệp song bằng ngành Khoa học máy tính/Quản trị kinh doanh tại đại học 4 năm ở Seoul và có nhiều kinh nghiệm khởi nghiệp

      • Đào tạo hơn 1600+ học viên tích lũy, sở hữu 4.4K+ người theo dõi trên SNS Threads / 470+ người theo dõi trên Substack

Thêm

Chương trình giảng dạy

Tất cả

31 bài giảng ∙ (4giờ 14phút)

Tài liệu khóa học:

Tài liệu bài giảng
Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

13 đánh giá

4.5

13 đánh giá

  • jdy8739님의 프로필 이미지
    jdy8739

    Đánh giá 19

    Đánh giá trung bình 4.9

    5

    100% đã tham gia

    Trong bài giảng có các nhiệm vụ, tôi thực sự khuyên bạn nên thử thực hiện chúng.

    • americasnail
      Giảng viên

      Cảm ơn bạn rất nhiều vì những đánh giá khóa học quý báu. Cảm ơn bạn đã tham gia khóa học, và tôi đang có kế hoạch đăng tải bài nộp thiết kế nhiệm vụ xuất sắc của bạn lên nội dung Substack (chỉ dành cho những người đã nộp bài). Xin cảm ơn và chúc bạn một ngày tốt lành.

  • heunonian0013님의 프로필 이미지
    heunonian0013

    Đánh giá 1

    Đánh giá trung bình 5.0

    5

    33% đã tham gia

    Đây là lớp học giúp mở rộng tầm nhìn.

    • americasnail
      Giảng viên

      Xin chào bạn Bora Ahn, cảm ơn bạn rất nhiều vì những đánh giá quý báu về khóa học. Chúc bạn một ngày tốt lành. Xin cảm ơn.

  • fined0006806님의 프로필 이미지
    fined0006806

    Đánh giá 54

    Đánh giá trung bình 4.7

    5

    74% đã tham gia

    Thật tuyệt vời. Là một lập trình viên Front-end 5 năm kinh nghiệm, tôi cảm thấy những phần mình còn thiếu sót và bế tắc bấy lâu nay đã được giải tỏa phần nào thông qua khóa học này. Tôi thực sự khuyên các bạn nên dồn hết tâm sức để thực hiện các nhiệm vụ (mission) xen kẽ trong khóa học dù có khó khăn đến đâu. Bởi vì bạn sẽ nhận được những phản hồi cực kỳ chi tiết từ giảng viên đấy! Rất cảm ơn bạn đã tạo ra khóa học này! Nếu bạn có kế hoạch cho các khóa học khác, nhất định hãy ra mắt thêm nhé. Xin cảm ơn!

    • americasnail
      Giảng viên

      Chào bạn Mango, cảm ơn bạn rất nhiều vì những đánh giá quý báu về khóa học. Dự kiến các bài giảng mới về thiết kế hệ thống di động sẽ được công bố trong tháng 8! Thiết kế của bạn rất tốt. Bạn đã vất vả nhiều khi thực hiện nhiệm vụ rồi. Chúc bạn một ngày tốt lành.

  • jungeunc4839님의 프로필 이미지
    jungeunc4839

    Đánh giá 1

    Đánh giá trung bình 5.0

    5

    41% đã tham gia

    Đây là khóa học đề cập đến những chủ đề mà bất kỳ ai khi làm việc cũng từng ít nhất một lần trăn trở và thử áp dụng theo cách riêng của mình. Tuy nhiên, tôi không ngờ rằng những khái niệm vốn dĩ chỉ biết một cách mơ hồ lại được giải thích thông qua các ví dụ và tài liệu cụ thể, hệ thống đến thế. Suốt cả buổi học, tôi liên tục có những khoảnh khắc kiểu như "À, hóa ra nó được đúc kết lại như thế này". Nếu bạn là người đã có kinh nghiệm thực tế, nội dung sẽ không quá xa lạ, nhưng chính vì vậy mà bạn lại càng có thể nhận ra được nhiều điều giá trị hơn. Những thứ mà bấy lâu nay tôi chỉ biết và sử dụng một cách lờ mờ đã được ngôn ngữ hóa và cấu trúc hóa một cách rõ ràng thông qua khóa học này. Dù bạn ở mức kinh nghiệm nào, tôi cũng hy vọng bạn hãy thử nghe một lần. Tôi cực kỳ đề xuất khóa học này.

    • americasnail
      Giảng viên

      Chào bạn Choi Jung-eun, cảm ơn bạn rất nhiều vì những đánh giá quý báu về khóa học. Tôi thực sự rất biết ơn. Trong tương lai, tôi sẽ tiếp tục nỗ lực để mang đến những bài giảng giúp khơi dậy sự tuyệt vời của các học viên. Chúc bạn một ngày tốt lành.

  • uthi1004님의 프로필 이미지
    uthi1004

    Đánh giá 7

    Đánh giá trung bình 4.7

    5

    33% đã tham gia

    Ngay sau khi nghe liên tiếp các bài giảng trước đó... mặc dù giảng viên có thể có nhiều kiến thức nhưng cấu trúc nội dung và ý đồ diễn đạt rất khó hiểu, khiến tôi thực sự mệt mỏi khi nghe và cảm thấy tiếc tiền học phí.. thì tôi đã gặp được một bài giảng quý giá như viên ngọc thế này. Từ trước đến nay dù có nhiều bài giảng về Front-end nhưng phần về System Design vẫn còn rất mơ hồ, vậy mà tôi đã gặp được một bài giảng tốt đến vậy. Cách giải thích rất dễ hiểu và tôi đang học hỏi được rất nhiều điều.

    • americasnail
      Giảng viên

      Cảm ơn bạn rất nhiều :) Cảm ơn bạn vì những đánh giá khóa học quý giá, tôi sẽ tiếp tục nỗ lực để khơi dậy sự tuyệt vời của các học viên. Chúc bạn một ngày tốt lành!

Khóa học khác của americasnail

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!

Ưu đãi có thời hạn

74.250 ₫

25%

2.086.924 ₫