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 (Bảo mật (Security), System Design & Kiến trúc, SQL & Database). 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.
01Xác thực (authentication) khác phân quyền (authorization) thế nào? Kể lỗi phân quyền hay gặp.Bảo mật (Security)
Gợi ý trả lời
Ôn thêm câu hỏi Bảo mật (Security) →Authentication trả lời "bạn là ai"; authorization trả lời "bạn được làm gì". Lỗi phân quyền (Broken Access Control) đứng đầu OWASP Top 10 trong các bản gần đây.
Lỗi hay gặp:
- IDOR: đổi
/orders/123thành/orders/124xem được đơn người khác vì server không kiểm tra chủ sở hữu. - Chỉ ẩn nút trên giao diện mà API vẫn cho gọi.
- Tin vào role gửi từ client.
Cách phòng:
- Kiểm tra quyền ở server cho mọi request, mặc định từ chối.
- Tập trung logic phân quyền vào một chỗ (middleware, policy).
- Viết test cho trường hợp người dùng A truy cập dữ liệu của B.
- IDOR: đổi
02Dùng JWT cho xác thực API cần lưu ý những gì?Bảo mật (Security)
Gợi ý trả lời
Ôn thêm câu hỏi Bảo mật (Security) →JWT là token tự chứa thông tin, server kiểm tra bằng chữ ký mà không cần tra DB; điểm yếu là khó thu hồi trước khi hết hạn.
- Luôn kiểm tra chữ ký với thuật toán cố định phía server; từ chối
alg: none. - Kiểm tra
exp,iss,aud. - Access token sống ngắn (vài phút), kèm refresh token có thể thu hồi và xoay vòng.
- Payload chỉ base64, ai cũng đọc được: không chứa dữ liệu nhạy cảm.
- Trên trình duyệt, cân nhắc cookie
HttpOnlythay vìlocalStorageđể giảm hậu quả nếu có XSS. - Khoá ký đủ mạnh, quản lý trong secret manager.
Người phỏng vấn muốn nghe: hiểu đánh đổi giữa JWT và session lưu phía server.
- Luôn kiểm tra chữ ký với thuật toán cố định phía server; từ chối
03SIEM là gì? Trong SOC, bạn xử lý một alert như thế nào?Bảo mật (Security)
Gợi ý trả lời
Ôn thêm câu hỏi Bảo mật (Security) →SIEM thu thập log từ nhiều nguồn (firewall, endpoint, server, cloud, AD), chuẩn hoá, tương quan và sinh alert theo rule hoặc phát hiện bất thường.
Quy trình xử lý alert:
- Triage: đọc alert, xác định tài sản và người dùng liên quan, mức độ quan trọng.
- Điều tra: đối chiếu log xung quanh thời điểm, tra IOC (IP, hash, domain) với threat intel.
- Kết luận: dương tính thật hay giả; ghi lại bằng chứng.
- Leo thang theo playbook nếu là sự cố thật.
- Tinh chỉnh rule nếu là báo động giả lặp lại.
Người phỏng vấn muốn nghe: ghi chép đầy đủ và biết khi nào cần leo thang thay vì tự xử lý.
04Thiết kế hệ thống thông báo (notification) gửi push, email, SMS cho hàng triệu người dùng.System Design & Kiến trúc · Senior
Gợi ý trả lời
Ôn thêm câu hỏi System Design & Kiến trúc →Tách phần nhận yêu cầu khỏi phần gửi qua hàng đợi, và tách riêng từng kênh để kênh này lỗi không ảnh hưởng kênh khác.
- Notification service nhận yêu cầu, kiểm tra cài đặt và tuỳ chọn tắt thông báo của người dùng, render template, rồi đẩy vào queue theo kênh.
- Worker theo kênh gọi nhà cung cấp (FCM/APNs, email, SMS), retry có backoff, chuyển message lỗi vĩnh viễn sang dead letter queue.
- Ưu tiên: OTP, giao dịch dùng queue riêng, không bị kẹt sau chiến dịch marketing gửi hàng loạt.
- Chống trùng: idempotency key cho mỗi thông báo.
- Giới hạn: rate limit theo nhà cung cấp và theo người dùng; tôn trọng khung giờ yên lặng.
- Lưu trạng thái gửi, mở, lỗi để theo dõi và xử lý token thiết bị hết hạn.
Người phỏng vấn muốn nghe: bạn ước lượng được lưu lượng lúc cao điểm và nêu cách scale worker theo độ dài hàng đợi.
05Hệ thống microservices gặp sự cố, bạn cần những gì để quan sát (observability) và tìm nguyên nhân?System Design & Kiến trúc · Senior
Gợi ý trả lời
Ôn thêm câu hỏi System Design & Kiến trúc →Cần đủ ba nguồn tín hiệu được liên kết với nhau: metrics, logs, traces.
- Metrics: theo phương pháp RED cho service (Rate, Errors, Duration với p95, p99) và USE cho tài nguyên. Cảnh báo dựa trên SLO (vd. tỉ lệ lỗi, độ trễ) thay vì CPU đơn thuần.
- Logs có cấu trúc (JSON), kèm
trace_idvàrequest_idđể lọc toàn bộ log của một request qua nhiều service. - Distributed tracing với OpenTelemetry: thấy request đi qua những service nào, chậm ở đoạn nào.
- Dashboard theo từng service, ghi nhận các lần deploy để đối chiếu với thời điểm lỗi.
Khi có sự cố: ưu tiên khôi phục (rollback, tắt feature flag) trước, tìm nguyên nhân gốc sau, rồi viết postmortem không đổ lỗi cá nhân.
Người phỏng vấn muốn nghe: một sự cố thật bạn từng tham gia và điều đã cải thiện sau đó.
06Một API chạy chậm, nghi do query. Bạn điều tra và tối ưu thế nào?SQL & Database
Gợi ý trả lời
Ôn thêm câu hỏi SQL & Database →Đo trước rồi mới sửa: tìm đúng query chậm, đọc execution plan, rồi chỉnh index hoặc cách viết query.
- Bật slow query log (MySQL) hoặc
pg_stat_statements(PostgreSQL) để biết query nào tốn thời gian nhất. - Chạy
EXPLAIN(PostgreSQL nên dùngEXPLAIN (ANALYZE, BUFFERS)) xem có full scan, ước lượng số dòng lệch nhiều so với thực tế, sort trên đĩa không. - Sửa theo nguyên nhân: thêm hoặc đổi composite index, bỏ hàm bọc cột, chỉ
SELECTcột cần, phân trang bằng keyset thay choOFFSETlớn. - Kiểm tra phía ứng dụng: lỗi N+1 query, thiếu connection pool, lock chờ lâu.
- Cập nhật thống kê (
ANALYZE) nếu planner ước lượng sai.
Người phỏng vấn muốn nghe: quy trình có số liệu trước/sau, không phải đoán rồi thêm index bừa.
- Bật slow query log (MySQL) hoặc
07Bạn đưa bảo mật vào quy trình phát triển phần mềm (DevSecOps) thế nào?Bảo mật (Security)
Gợi ý trả lời
Ôn thêm câu hỏi Bảo mật (Security) →Ý chính là "shift left": phát hiện lỗi sớm, tự động trong pipeline, nhưng không làm chậm team quá mức.
- Thiết kế: threat modeling cho tính năng nhạy cảm (thanh toán, đăng nhập).
- Code: SAST, quét secret ở pre-commit và CI.
- Phụ thuộc: SCA quét thư viện có lỗ hổng, cập nhật tự động; tạo SBOM.
- Build: quét image container, ký artifact.
- Chạy thử: DAST trên staging.
- Hạ tầng: quét IaC tìm cấu hình sai.
Chặn build chỉ với lỗi mức cao có thể khai thác; lỗi khác đưa vào backlog có hạn xử lý.
Hay sai: bật mọi công cụ với ngưỡng gắt, dev ngập báo động giả và tìm cách tắt.
08Phát hiện một máy chủ có dấu hiệu bị xâm nhập. Bạn ứng phó theo các bước nào?Bảo mật (Security) · Senior
Gợi ý trả lời
Ôn thêm câu hỏi Bảo mật (Security) →Theo vòng đời ứng phó sự cố: chuẩn bị, phát hiện và phân tích, ngăn chặn, loại bỏ, khôi phục, rút kinh nghiệm.
- Xác nhận và báo cáo theo quy trình, lập nhóm xử lý, ghi mốc thời gian.
- Ngăn chặn: cô lập máy khỏi mạng nhưng không tắt nguồn vội, để giữ bằng chứng trong RAM.
- Thu thập bằng chứng: snapshot đĩa, bộ nhớ, log; giữ chuỗi bảo quản.
- Xác định phạm vi: tài khoản, máy khác, dữ liệu bị ảnh hưởng.
- Loại bỏ và khôi phục: dựng lại từ image sạch, đổi toàn bộ credential liên quan, vá lỗ hổng gốc.
- Sau sự cố: báo cáo, bổ sung rule phát hiện; thông báo theo nghĩa vụ pháp lý nếu lộ dữ liệu cá nhân.
Hay sai: chỉ xoá mã độc rồi dùng tiếp máy đó.
09Do you have any questions for us?Phỏng vấn tiếng Anh
Gợi ý trả lời
Ôn thêm câu hỏi Phỏng vấn tiếng Anh →"Yes, I have a couple of questions. First, could you tell me what a typical week looks like for this role? And second, what are the biggest challenges the team is facing right now? I'd also like to know how you measure success for someone in this position during the first three months."
Mẹo: chuẩn bị sẵn 2–3 câu, dùng mẫu lịch sự "Could you tell me…?", "I'd like to know…". Đừng trả lời "No, I don't". Câu hỏi về chế độ, phúc lợi nên để dành cho buổi nói chuyện với HR.
10Bạn hãy giới thiệu ngắn về bản thân.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á →Đây là câu mở đầu gần như chắc chắn có. Dùng công thức Hiện tại – Quá khứ – Tương lai, gói trong khoảng 1–2 phút.
- Hiện tại: vị trí, số năm kinh nghiệm, mảng/công nghệ chính.
- Quá khứ: một hai dự án hoặc thành tích liên quan nhất tới vị trí đang tuyển.
- Tương lai: vì sao bạn quan tâm tới vị trí này.
Câu mẫu: "Em là backend developer, khoảng 3 năm kinh nghiệm, chủ yếu làm Java Spring cho hệ thống thanh toán. Ở dự án gần nhất em phụ trách module đối soát và tối ưu các truy vấn báo cáo chạy chậm. Em đang tìm môi trường làm sản phẩm lâu dài để đi sâu hơn về thiết kế hệ thống, nên rất quan tâm tới vị trí này."
Hay sai: kể từ quê quán, trường cấp ba, hoặc đọc lại nguyên CV.
Bạn đã phỏng vấn ở ITviec Recruitment Consulting?
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