Phỏng vấn thiết kế hệ thống cho kỹ sư AI: Hướng dẫn thực tế

Bởi Aaron Cao · Cập nhật

Nó yêu cầu bạn thiết kế một hệ thống machine learning từ đầu đến cuối: dữ liệu và feature, huấn luyện và đánh giá, serving và độ trễ, giám sát và drift. Các vòng gần đây nghiêng nhiều về retrieval augmented generation (RAG) và model serving. Việc chấm điểm dựa trên các trade-off mà bạn có thể bảo vệ, chứ không phải một kiến trúc đúng duy nhất.

Vòng này thực sự đang kiểm tra điều gì

Lần đầu nghe, đề bài này nghe có vẻ rộng đến mức phi lý: thiết kế một hệ thống gợi ý, hoặc thiết kế một chatbot trên các tài liệu nội bộ của công ty. Phần này giải thích người phỏng vấn thực sự chấm điểm gì, để sự rộng lớn đó không còn là vấn đề nữa. Nói ngắn gọn, họ chấm điểm việc bạn có thể biến một yêu cầu sản phẩm mơ hồ thành một hệ thống gắn liền với các con số hay không.

Bốn điều quyết định phần lớn số điểm:

  • Scoping.Bạn có hỏi người dùng là ai, có bao nhiêu truy vấn mỗi giây, và mức chất lượng nào được coi là thành công, trước khi vẽ bất cứ thứ gì không?
  • Khả năng phán đoán về dữ liệu.Dữ liệu huấn luyện đến từ đâu, được gán nhãn như thế nào, và điều gì bị rò rỉ giữa huấn luyện và serving?
  • Đánh giá.Các chỉ số offline cộng với một guardrail online. Một câu trả lời không có kế hoạch đánh giá nghe như của người mới vào nghề, dù kiến trúc có tốt đến đâu.
  • Cảm quan về production.Ngân sách độ trễ, chi phí mỗi request, nhịp độ huấn luyện lại, và điều gì xảy ra khi mô hình sai.

Những đề bài cứ lặp đi lặp lại

Năm dạng đề bài bao trùm hầu hết các vòng phỏng vấn thiết kế hệ thống cho kỹ sư AI:

  • Retrieval augmented generation trên tài liệu riêng tư.Chiến lược chunking, lựa chọn mô hình embedding, chỉ mục vector, reranking, và bạn làm gì khi retrieval không trả về gì liên quan.
  • Model serving ở quy mô lớn.Batching, quantization, giữ cho GPU luôn bận, caching, và mục tiêu độ trễ p99 mà bạn đã cam kết trong lúc scoping.
  • Recommendation hoặc ranking.Sinh ứng viên rồi ranking, một feature store, skew giữa huấn luyện và serving, cold start.
  • Một feature pipeline.Streaming so với batch, tính đúng đắn point-in-time, backfill.
  • Một agentic workflow.Gọi công cụ, giới hạn số bước, trần chi phí, và con người can thiệp như thế nào. Một ngân hàng câu hỏi đầy đủ hơn nằm ở mục các loại phỏng vấn.

Mỗi đề bài trong số này đều có một điểm khó mà người phỏng vấn đang chờ đợi. Với retrieval, đó là đánh giá, vì ai cũng có thể nêu tên một vector database nhưng rất ít người có thể nói được họ sẽ đo lường việc retrieval có cải thiện hay không như thế nào. Với serving, đó là sự đánh đổi giữa chi phí và độ trễ so với kích thước mô hình.

Một cấu trúc trụ vững qua 45 phút

Dành năm phút đầu tiên cho các yêu cầu và con số, và viết chúng ra nơi người phỏng vấn có thể nhìn thấy: số truy vấn mỗi giây, độ trễ chấp nhận được, mức chất lượng, ngân sách. Mọi thứ sau đó đều quay lại tham chiếu bốn con số này, và chính điều đó khiến câu trả lời nghe như kỹ thuật thực thụ chứ không phải một chuyến tham quan công cụ.

Sau đó, hãy đi theo hướng breadth first: một sơ đồ gồm các nguồn dữ liệu, huấn luyện offline, một artifact store, một đường serving, và một vòng phản hồi. Chỉ sau khi toàn bộ bức tranh đã hiện ra, bạn mới đi sâu vào chi tiết, và để người phỏng vấn chọn thành phần nào. Kết thúc bằng cách nêu tên hai failure mode và bạn sẽ giám sát gì để phát hiện từng cái.

Một kỹ sư machine learning đang phỏng vấn cho vị trí senior tại một công ty tìm kiếm được yêu cầu thiết kế tìm kiếm ngữ nghĩa trên các ticket hỗ trợ. Cô dành bốn phút cho scoping, cam kết độ trễ 200 mili giây ở p95 và một ngân sách suy luận hàng tháng cố định, rồi dùng cả hai con số đó để loại bỏ một reranker lớn và chọn một cross-encoder nhỏ trên 50 ứng viên hàng đầu. Điều được chấm điểm là sự đánh đổi đó, chứ không phải lựa chọn mô hình.

Một trợ lý trực tiếp giúp ích ở đâu trong vòng thiết kế

Thiết kế hệ thống là nói và vẽ, nên một trợ lý giúp ít hơn ở đây so với các vòng khác. Điều nó có thể làm là giữ checklist luôn hiện diện trước mặt bạn. SubcueAI lắng nghe âm thanh cuộc họp và đặt một cấu trúc lên overlay cục bộ: các câu hỏi scoping bạn chưa hỏi, phần đánh giá bạn đã bỏ qua, các failure mode đáng nêu ra. Ứng dụng desktop trên macOS và Windows thu âm thanh hệ thống cùng với micro của bạn; bảng bên của tiện ích mở rộng trình duyệt chỉ thu âm thanh của tab cuộc họp, nên nó chỉ nghe thấy người phỏng vấn mà không phiên âm lời bạn nói. Không có bot nào tham gia cuộc gọi.

Các giới hạn quan trọng hơn ở vòng này so với hầu hết các vòng khác. Nếu bạn đang chia sẻ màn hình để vẽ sơ đồ, overlay cũng nằm trong phần bạn đang chia sẻ. Các bài đánh giá có giám sát và các máy do công ty quản lý nằm ngoài phạm vi, và không có công cụ nào là không thể phát hiện trong mọi trường hợp. Một trợ lý cũng không thể bịa ra khả năng phán đoán kiến trúc vốn đang được chấm điểm. Luyện tập những đề bài này với một người phỏng vấn AI trên trang phỏng vấn thử mới xây dựng được điều đó; overlay chỉ giúp bạn không quên phần đánh giá ở phút 30.

Câu hỏi thường gặp

Tôi có cần biết tên một vector database cụ thể không?

Nêu tên một cái cũng được, nhưng bảo vệ được lựa chọn đó mới quan trọng hơn. Người phỏng vấn sẽ hỏi tại sao lại là index đó, sự đánh đổi về recall là gì, và bạn sẽ reindex như thế nào mà không gây downtime.

Các vòng này yêu cầu bao nhiêu kiến thức toán học?

Đủ để ước lượng quy mô: số chiều embedding so với bộ nhớ index, số token so với chi phí, kích thước batch so với độ trễ. Việc suy diễn công thức hiếm khi xảy ra, còn phép tính nhẩm bạn có thể nói to lên thì rất phổ biến.

Vòng thiết kế hệ thống cho kỹ sư AI có khác vòng cổ điển không?

Khung làm việc vẫn giống nhau. Điểm khác là dữ liệu, đánh giá, và vòng đời mô hình gánh trọng lượng mà một vòng cổ điển dành cho sharding và tính nhất quán.

SubcueAI có thể giúp gì khi tôi đang vẽ sơ đồ không?

Nó có thể nhắc bạn những phần trong khung làm việc mà bạn chưa đề cập tới. Nếu sơ đồ đang ở trên màn hình được chia sẻ, hãy nhớ rằng overlay cũng nằm trong phần bạn đang chia sẻ.

Câu hỏi liên quan

← Thêm về Loại phỏng vấn