강의

멘토링

커뮤니티

NEW
Programming

/

Back-end

Hướng dẫn hoàn hảo về thiết kế hệ thống mà mọi lập trình viên nhất định phải biết

Nội dung đề cập đến những bản chất cốt lõi của khoa học máy tính không thay đổi trong kỷ nguyên AI. Bạn có thể chuẩn bị cho các buổi phỏng vấn thiết kế hệ thống (System Design) để xin việc hoặc nhảy việc.

24 học viên đang tham gia khóa học này

Độ khó Nhập môn

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

  • J Tech
Interview
Interview
backend
backend
Interview
Interview
backend
backend

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

  • Sự hiểu biết và cái nhìn sâu sắc cơ bản về thiết kế hệ thống

  • Những nội dung về thiết kế hệ thống đáng để kiểm tra trong thực tế công việc

  • Nội dung thiết kế hệ thống cơ bản thường gặp trong phỏng vấn


Những điều lập trình viên nhất định phải biết
Thiết kế hệ thống cốt lõi


Bạn đã bao giờ từng lo lắng rằng "AI đã làm hết việc lập trình rồi, mình phải làm sao đây?" dù chỉ một lần chưa?

Bạn đã bao giờ cảm thấy mông lung không biết nên học gì giữa biển thông tin bao la chưa?

Bạn đã bao giờ trải qua khoảnh khắc cảm thấy bế tắc và không thể tự tin trả lời các câu hỏi về thiết kế hệ thống trước mặt người phỏng vấn chưa?

Tất cả những khó khăn này hoàn toàn có thể vượt qua được thông qua việc học tập có hệ thống. Khóa học này sẽ giúp bạn hiểu rõ các nguyên lý cốt lõi của thiết kế hệ thống, đồng thời có được kiến thức chuyên sâu và sự tự tin để áp dụng ngay vào thực tế.

Lập trình viên là người giải quyết vấn đề. Vượt xa khỏi việc chỉ viết mã, khả năng thiết kế các hệ thống phức tạp một cách hiệu quả là bản chất cốt lõi của ngành khoa học máy tính không bao giờ thay đổi ngay cả trong kỷ nguyên AI. Khóa học này sẽ lần lượt hướng dẫn các yếu tố cơ bản của thiết kế hệ thống phục vụ cho việc tìm việc và chuyển việc, đồng thời cung cấp kiến thức thực tiễn và cái nhìn sâu sắc để giải quyết các vấn đề gặp phải trong công việc thực tế.

Sau khi kết thúc khóa học này, bạn sẽ


Bạn sẽ hiểu sâu sắc bản chất của khoa học máy tính, thứ không bao giờ thay đổi ngay cả trong kỷ nguyên AI.

  • Thay vì chỉ chạy theo những xu hướng công nghệ mới nhất, bạn có thể nắm vững các nguyên lý cơ bản của thiết kế hệ thống để phát triển thành một lập trình viên vững vàng trước mọi thay đổi. Khi đối mặt với những hệ thống phức tạp, bạn sẽ có những tiêu chuẩn rõ ràng để biết nên bắt đầu tiếp cận từ đâu.

Trang bị năng lực thực tế để chuẩn bị cho các buổi phỏng vấn thiết kế hệ thống khi xin việc hoặc chuyển việc.

  • Bạn sẽ được học các chiến lược giải quyết cho những vấn đề thiết kế hệ thống thường gặp trong thực tế, đồng thời phát triển khả năng xây dựng câu trả lời logic và đầy thuyết phục để thu hút người phỏng vấn. Bạn sẽ có được sự tự tin để giải thích rõ ràng lý do 'tại sao lại thiết kế như thế này'.

Nắm bắt rõ ràng các khái niệm cốt lõi của các hệ thống phức tạp.

  • Bạn sẽ hiểu chính xác các thuật ngữ và khái niệm cốt lõi của thiết kế hệ thống như Latency (độ trễ), Throughput (băng thông), Scalability (khả năng mở rộng), hệ thống phân tán, định lý CAP, đồng thời học cách áp dụng chúng vào thiết kế hệ thống thực tế thông qua các ví dụ cụ thể. Những thuật ngữ thiết kế hệ thống vốn dĩ cảm thấy mơ hồ sẽ trở nên rõ ràng hơn bao giờ hết.

Học các kỹ thuật thiết kế hệ thống đa dạng để giải quyết các vấn đề thực tế.

  • Từ truyền thông HTTP, TCP/UDP đến thiết kế API, hiểu sâu về cơ sở dữ liệu (SQL, NoSQL), chiến lược caching, sử dụng message queue, phương pháp xử lý dữ liệu lớn, cho đến kỹ thuật giám sát, bạn sẽ nắm vững một cách hệ thống các kỹ thuật thiết kế sâu rộng cần thiết cho việc xây dựng và vận hành dịch vụ thực tế. Bạn sẽ có khả năng đưa ra các giải pháp hiệu quả cho nhiều tình huống vấn đề phát sinh trong công việc thực tế.


✔️

Thời đại AI, bản chất không thay đổi của Khoa học máy tính
Hướng dẫn hoàn hảo về Thiết kế hệ thống

Cho dù có bao nhiêu công cụ AI ra đời đi chăng nữa, bản chất của người phát triển và bản chất của thiết kế hệ thống vẫn không thay đổi. Nếu bạn nắm vững những nền tảng cốt lõi này, sau này ngay cả khi thực hiện một câu lệnh prompt, bạn cũng sẽ làm được một cách dễ dàng hơn nhiều.


📚

Khám phá bản chất của khoa học máy tính
cho kỷ nguyên AI

Phần 2

Hiểu các khái niệm cốt lõi về thiết kế hệ thống

Chúng tôi sẽ đi sâu vào các nguyên lý cốt lõi của thiết kế hệ thống như độ trễ (latency), thông lượng (throughput), khả năng mở rộng, cân bằng tải, hệ thống phân tán, định lý CAP, xử lý sự cố (failover) và túc số (quorum). Thông qua đó, tạo nền tảng vững chắc cho việc thiết kế hệ thống mạnh mẽ.


Phần 3

Giao thức truyền thông giữa các hệ thống và Thiết kế API

Tìm hiểu nguyên lý của các giao thức truyền thông như HTTP, TCP/UDP, đồng thời học cách thiết kế API hiệu quả, API Proxy và các phương án đảm bảo tính phục hồi (resilience) cho API. Cung cấp những hiểu biết kỹ thuật sâu sắc để các hệ thống tương tác với nhau một cách mượt mà.


Phần 4

Phân tích chuyên sâu và hướng dẫn lựa chọn cơ sở dữ liệu

Khám phá các khái niệm cốt lõi của cơ sở dữ liệu như Transaction, nguyên tắc ACID, cấp độ cô lập (Isolation level), Indexing, Replication, Partitioning/Sharding. Ngoài ra, chúng tôi cũng xem xét các loại hình và trường hợp sử dụng đa dạng của NoSQL, đồng thời đưa ra các hướng dẫn thực tế về tiêu chí lựa chọn cơ sở dữ liệu.


Phần 5

Chiến lược bộ nhớ đệm hiệu quả và ứng dụng CDN

Tìm hiểu về nguyên lý cơ bản của bộ nhớ đệm (cache), khái niệm tính cục bộ (locality) và các mô hình bộ nhớ đệm khác nhau. Phân tích vai trò của mạng phân phối nội dung (CDN) và những vấn đề có thể phát sinh khi thiết kế bộ nhớ đệm để tìm kiếm giải pháp tối ưu hóa hiệu suất.


Phần 6

Cách thức hoạt động và ví dụ ứng dụng của Message Queue

Tìm hiểu khái niệm và phương thức xử lý cốt lõi của hàng đợi tin nhắn (Message Queue), đồng thời xem xét các trường hợp sử dụng đa dạng trong việc truyền thông bất đồng bộ và giảm độ ràng buộc giữa các hệ thống. Học cách quản lý luồng dữ liệu hiệu quả thông qua hàng đợi tin nhắn.


Phần 7

Kỹ thuật xử lý và phân tích dữ liệu lớn

Hiểu đặc điểm của dữ liệu lớn (Big Data) và phân tích sự khác biệt giữa OLTP và OLAP. Tìm hiểu nguyên lý của hệ thống xử lý phân tán, so sánh ưu nhược điểm của xử lý theo lô (batch processing) và xử lý luồng (stream processing), đồng thời nhấn mạnh tầm quan trọng của quản trị dữ liệu (data governance).


Phần 8

Giám sát hệ thống và phân tích các chỉ số cốt lõi

Chúng ta sẽ xem xét các chỉ số giám sát chính, từ đó học cách nắm bắt trạng thái hiện tại của hệ thống và phương pháp ngăn ngừa trước các vấn đề tiềm ẩn.


Bài giảng sẽ liên tục được cập nhật

Có thể giải quyết
nỗi lo của những người này!

📌

Nhà phát triển định hướng thiết kế hệ thống trong kỷ nguyên AI

Những người cảm thấy thiếu nền tảng khoa học máy tính vững chắc và năng lực thiết kế để giải quyết các vấn đề hệ thống phức tạp phát sinh trong thực tế.

📌

Sinh viên mới tốt nghiệp muốn tăng thêm chiều sâu cho hồ sơ năng lực (portfolio)

Những người muốn tạo ra một hồ sơ năng lực (portfolio) có sức cạnh tranh bằng cách thể hiện năng lực thiết kế hệ thống, thay vì chỉ dừng lại ở kinh nghiệm lập trình đơn thuần.

📌

Nhà phát triển Backend đang chuẩn bị nhảy việc

Những người đang cảm thấy giới hạn của hệ thống hiện tại và muốn nâng cao kiến thức thực tế về thiết kế hệ thống có khả năng mở rộng, xử lý lưu lượng truy cập lớn cũng như rèn luyện kỹ năng chuẩn bị phỏng vấn.




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

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

  • Sẽ tốt hơn nếu bạn có kiến thức cơ bản về khoa học máy tính, nhưng nếu không có cũng không sao.

  • Khóa học này là một khóa học lý thuyết, không phải là lớp học lập trình.

  • Sau khi hoàn thành khóa học, bạn sẽ đạt được hiệu quả cao hơn nếu tự mình nghiên cứu thêm các tài liệu học tập bổ sung và từ khóa có trong ghi chú bài giảng.



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

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

  • Trong kỷ nguyên AI, nhà phát triển hướng tới thiết kế hệ thống thay vì chỉ dừng lại ở lập trình.

  • Người tìm việc muốn thêm những góc nhìn sâu sắc (insight) bổ sung vào hồ sơ năng lực (portfolio) của mình.

  • Người không chuyên muốn xây dựng nền tảng khoa học máy tính vững chắc.

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

  • Sẽ tốt hơn nếu bạn có kiến thức cơ bản về Khoa học máy tính (CS), nhưng nếu không có cũng không sao.

Xin chào
Đây là

480

Học viên

40

Đánh giá

35

Trả lời

5.0

Xếp hạng

3

Các khóa học

Xin chào. Tôi là nhà phát triển J.

Lập trình viên là người giải quyết vấn đề. Ở đây, vấn đề không chỉ nằm ở việc lập trình mà còn bao gồm tất cả những gì chúng ta đối mặt trong cuộc sống. Tôi tập trung vào việc giải quyết những vấn đề này một cách hiệu quả nhất với nguồn lực tối thiểu. Đồng thời, tôi luôn nỗ lực để tạo ra những kết quả sát với mục tiêu mong muốn bằng một cái nhìn logic và thực tế.

Hiện tại, tôi đang chia sẻ những kinh nghiệm và bí quyết của mình về vấn đề phổ biến là "tìm việc và nhảy việc".

Kinh nghiệm làm việc

  • Hiện tại) Đang làm việc tại một trong các công ty thuộc nhóm Naver, Kakao, Line, Coupang, Baemin.

  • Cựu nhân viên tại một trong các công ty Naver, Kakao, Line, Coupang, Baemin (Nekarakubae)

     

liên hệ: jaytech108@gmail.com

Tôi đang chia sẻ kinh nghiệm và bí quyết của mình về những vấn đề phổ biến này. Kinh nghiệm làm việc: Hiện tại: Đang làm việc tại một trong các công ty thuộc nhóm Naver, Kakao, Line, Coupang, Baemin (NAKARAKUBAE) Trước đây: Đã từng làm việc tại một trong các công ty thuộc nhóm Naver, Kakao, Line, Coupang, Baemin (NAKARAKUBAE) Liên hệ: jaytech108@gmail.com

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

Tất cả

41 bài giảng ∙ (3giờ 59phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Chưa có đủ đánh giá.
Hãy trở thành tác giả của một đánh giá giúp mọi người!

Ưu đãi có thời hạn, kết thúc sau 7 ngày ngày

34 ₫

34%

1.382.928 ₫

Khóa học khác của J Tech

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!