10 câu hỏi có thể gặp khi phỏng vấn
Chọn theo kỹ năng và cấp của tin (AI / Machine Learning, Python, C/C++ & Embedded). Gợi ý trả lời do Drama Công Ty biên soạn để bạn ôn nhanh, không phải đề của công ty.
01Khi nào bạn chọn prompt engineering, RAG hay fine-tuning?AI / Machine Learning
Gợi ý trả lời
Ôn thêm câu hỏi AI / Machine Learning →Bắt đầu từ cách rẻ và nhanh nhất, chỉ nâng cấp khi đo được là chưa đủ.
- Prompting: thử đầu tiên; chỉ dẫn rõ, ví dụ mẫu (few-shot), định dạng đầu ra có cấu trúc.
- RAG: khi mô hình thiếu kiến thức (tài liệu nội bộ, dữ liệu thay đổi thường xuyên), cần trích dẫn nguồn.
- Fine-tuning: khi cần đổi hành vi ổn định (văn phong, định dạng, tác vụ hẹp lặp lại), hoặc muốn dùng mô hình nhỏ rẻ hơn thay mô hình lớn. Kỹ thuật như LoRA giảm chi phí.
Fine-tuning không phải cách tốt để nhồi kiến thức mới hay thay đổi liên tục; RAG hợp hơn.
Người phỏng vấn muốn nghe: có bộ đánh giá trước để so sánh các phương án bằng số liệu.
02Hallucination của LLM là gì? Bạn giảm thiểu nó trong sản phẩm thế nào?AI / Machine Learning
Gợi ý trả lời
Ôn thêm câu hỏi AI / Machine Learning →Hallucination là khi mô hình sinh ra nội dung nghe hợp lý nhưng sai hoặc không có căn cứ. Không loại bỏ hoàn toàn được, chỉ giảm và kiểm soát.
- Cung cấp ngữ cảnh đúng qua RAG, yêu cầu chỉ trả lời dựa trên nguồn và trích dẫn.
- Cho phép và khuyến khích trả lời "không đủ thông tin".
- Dùng đầu ra có cấu trúc (JSON schema) và kiểm tra hợp lệ bằng code.
- Với số liệu, tra cứu hoặc tính toán qua tool/API thay vì để mô hình tự nhớ.
- Kiểm tra sau sinh: đối chiếu câu trả lời với nguồn.
- Thiết kế UX hiển thị nguồn; tác vụ rủi ro cao có người duyệt.
Người phỏng vấn muốn nghe: đo tỷ lệ hallucination bằng bộ đánh giá, không chỉ dựa vào cảm giác.
03Bạn triển khai một mô hình ML lên production và theo dõi nó thế nào?AI / Machine Learning
Gợi ý trả lời
Ôn thêm câu hỏi AI / Machine Learning →Mô hình lên production là một phần mềm cần đóng gói, phiên bản hoá, giám sát và cập nhật như mọi dịch vụ khác.
- Đóng gói: lưu mô hình kèm phiên bản dữ liệu, code, siêu tham số (model registry).
- Phục vụ: API online hoặc chạy batch tuỳ yêu cầu độ trễ; dùng chung code tính đặc trưng giữa train và serve để tránh lệch.
- Triển khai an toàn: shadow hoặc canary, so sánh với mô hình cũ.
- Giám sát: độ trễ, lỗi; data drift (phân phối đầu vào thay đổi); chất lượng dự đoán khi có nhãn thật.
- Cập nhật: train lại định kỳ hoặc khi drift vượt ngưỡng, có rollback.
Hay sai: training-serving skew, xử lý đặc trưng ở hai nơi bằng hai đoạn code khác nhau.
04Trong Django ORM, lỗi N+1 query là gì? Phân biệt
select_relatedvàprefetch_related.PythonGợi ý trả lời
Ôn thêm câu hỏi Python →N+1 là khi lấy danh sách bằng 1 query, rồi mỗi phần tử truy cập quan hệ lại sinh thêm 1 query. Ví dụ duyệt 50 bài viết và in
post.author.namesẽ thành 51 query.select_related: dùng SQLJOIN, cho quan hệ trỏ tới một object (ForeignKey,OneToOne).prefetch_related: chạy query riêng rồi ghép trong Python, cho quan hệ nhiều (ManyToMany, reverseForeignKey).
posts = (Post.objects .select_related("author") .prefetch_related("tags"))Phát hiện bằng Django Debug Toolbar, hoặc
assertNumQueriestrong test.Hay sai: gọi
.filter()trên quan hệ đã prefetch bên trong vòng lặp. Lệnh đó tạo query mới và bỏ qua dữ liệu prefetch; dùngPrefetch(..., queryset=...)để lọc ngay từ đầu.05Context manager (
with) là gì? Làm sao tự viết một context manager?PythonGợi ý trả lời
Ôn thêm câu hỏi Python →Context manager đảm bảo việc "mở" và "dọn dẹp" luôn đi cùng nhau, kể cả khi có exception: đóng file, trả connection, nhả lock, rollback transaction.
Cách nhanh nhất là dùng
contextlib.contextmanager:from contextlib import contextmanager @contextmanager def db_transaction(conn): try: yield conn conn.commit() except Exception: conn.rollback() raise- Cách đầy đủ: viết class có
__enter__và__exit__(self, exc_type, exc, tb). Nếu__exit__trả vềTruethì exception bị nuốt. - Bản async:
async with,__aenter__/__aexit__hoặcasynccontextmanager.
Hay sai: quên
raiselại exception trong khốiexcept, khiến lỗi bị che mất và code phía sau tưởng mọi thứ đã thành công.- Cách đầy đủ: viết class có
06RTOS khác vòng lặp super-loop thế nào? Mutex khác semaphore ra sao?C/C++ & Embedded
Gợi ý trả lời
Ôn thêm câu hỏi C/C++ & Embedded →Super-loop chạy tuần tự các việc trong một vòng
while(1), đơn giản nhưng một việc chậm sẽ làm trễ mọi việc khác. RTOS có scheduler preemptive theo độ ưu tiên, giúp các việc cần thời gian thực được đáp ứng đúng hạn.- Mutex: khoá loại trừ cho tài nguyên dùng chung, có khái niệm sở hữu (ai khoá thì người đó mở) và thường có priority inheritance để giảm đảo ưu tiên.
- Binary semaphore: dùng để báo hiệu giữa ISR và task hoặc giữa các task, không có sở hữu.
- Counting semaphore: quản lý N tài nguyên giống nhau.
Hay sai: dùng semaphore thay mutex để bảo vệ tài nguyên, gặp priority inversion: task ưu tiên cao chờ task thấp đang giữ khoá, trong khi task trung bình chiếm CPU.
Người phỏng vấn muốn nghe: bạn biết đặt độ ưu tiên task và kích thước stack hợp lý, và từng phát hiện stack overflow.
07Overfitting và underfitting là gì? Bạn phát hiện và khắc phục thế nào?AI / Machine Learning · Junior
Gợi ý trả lời
Ôn thêm câu hỏi AI / Machine Learning →Overfitting là mô hình học thuộc cả nhiễu của tập train nên kém trên dữ liệu mới; underfitting là mô hình quá đơn giản, kém ngay cả trên tập train.
Phát hiện: so sánh lỗi train và validation. Train tốt mà validation kém là overfit; cả hai đều kém là underfit.
Khắc phục overfitting:
- Thêm dữ liệu, data augmentation.
- Regularization (L1/L2, dropout, weight decay), early stopping.
- Giảm độ phức tạp mô hình, bớt đặc trưng nhiễu.
Khắc phục underfitting: mô hình mạnh hơn, đặc trưng tốt hơn, train lâu hơn, giảm regularization.
Người phỏng vấn muốn nghe: liên hệ với bias-variance trade-off và dùng cross-validation khi dữ liệu ít.
08Vì sao phải chia train/validation/test? Data leakage là gì?AI / Machine Learning · Junior
Gợi ý trả lời
Ôn thêm câu hỏi AI / Machine Learning →Train để học tham số, validation để chọn mô hình và siêu tham số, test để ước lượng hiệu năng thật lúc cuối và chỉ dùng một lần.
Data leakage là khi thông tin không có ở thời điểm dự đoán lọt vào lúc train, khiến kết quả offline đẹp nhưng chạy thật thì kém.
Ví dụ hay gặp:
- Chuẩn hoá hoặc chọn đặc trưng trên toàn bộ dữ liệu trước khi chia tập.
- Dữ liệu chuỗi thời gian chia ngẫu nhiên thay vì theo thời gian.
- Đặc trưng chứa thông tin từ tương lai hoặc từ chính nhãn (như "ngày huỷ hợp đồng" khi dự đoán khách rời bỏ).
- Cùng một người dùng xuất hiện ở cả train và test.
Hay sai: tinh chỉnh nhiều lần dựa trên tập test, biến nó thành validation.
09Precision, recall và F1 là gì? Với dữ liệu mất cân bằng, vì sao accuracy dễ đánh lừa?AI / Machine Learning · Junior
Gợi ý trả lời
Ôn thêm câu hỏi AI / Machine Learning →Precision là trong các ca mô hình báo dương, bao nhiêu ca đúng; recall là trong các ca dương thật, mô hình bắt được bao nhiêu; F1 là trung bình điều hoà của hai chỉ số.
Ví dụ phát hiện gian lận với 1% giao dịch gian lận: mô hình đoán "không gian lận" cho mọi giao dịch đạt accuracy 99% nhưng recall bằng 0.
- Ưu tiên recall khi bỏ sót đắt (bệnh, gian lận); ưu tiên precision khi báo nhầm đắt (chặn nhầm giao dịch).
- Dùng PR-AUC thay vì chỉ ROC-AUC khi lớp dương rất hiếm.
- Chọn ngưỡng quyết định theo chi phí nghiệp vụ, không mặc định 0.5.
Người phỏng vấn muốn nghe: gắn metric với hậu quả kinh doanh.
10Bạn có quen làm việc remote hoặc hybrid không? Làm sao để làm việc hiệu quả khi không ở văn phòng?Câu hỏi hành vi & văn hoá
Gợi ý trả lời
Ôn thêm câu hỏi Câu hỏi hành vi & văn hoá →Người phỏng vấn muốn biết bạn tự quản lý được và giao tiếp chủ động khi không ngồi cạnh team.
- Cập nhật tiến độ thường xuyên trên công cụ chung (ticket, kênh chat của team), không để người khác phải hỏi.
- Viết rõ ràng: câu hỏi có ngữ cảnh, ghi lại kết quả thảo luận.
- Có khung giờ làm việc ổn định, phản hồi trong giờ làm, báo trước khi vắng.
- Dùng ngày lên văn phòng (nếu hybrid) cho thảo luận, brainstorm, gặp gỡ team.
Câu mẫu: "Team cũ của em làm hybrid hai ngày ở văn phòng. Những ngày remote em cập nhật trạng thái task mỗi sáng và cuối ngày, vướng gì thì gọi nhanh 10 phút thay vì nhắn qua lại."
Bạn đã phỏng vấn ở Safetrust?
Kể lại các vòng và câu hỏi đã gặp (ẩn danh) để người sau ôn đúng trọng tâm.
Chia sẻ kinh nghiệm phỏng vấn