Ôn phỏng vấn QC Engineer — Security & AI
- qc-engineer
- interview
- security
- automation
- ai
Bộ tài liệu#
Bắt đầu bộ 200 câu hỏi và answer. Mỗi câu có explanation về bản chất, cách áp dụng và điểm dễ nhầm; sáu bài thực hành cuối có đáp án mẫu. Mở phần giải thích của câu trên website để đọc. Khi đọc file trực tiếp, dùng file middle-senior-interview-qa-explanations.md cùng thư mục.
Tài liệu được cá nhân hóa theo JD QC của công ty Security & AI và CV người dùng cung cấp ngày 26/09/2026. Không đưa số điện thoại, email hoặc bản PDF vào nội dung website. Các câu về dự án là gợi ý khai thác kinh nghiệm, không khẳng định mọi tình huống minh họa đã xảy ra trong dự án đó.
Có 46 câu Middle, 144 câu Senior và 10 câu Lead. Mức Lead bổ sung góc nhìn quản lý theo open role; phần kỹ thuật vẫn ưu tiên Middle–Senior. 74 câu từ 21 đến 94 dành cho SSO, OAuth/OIDC, IAM, E2EE và bài toán kết hợp; các phần automation, performance, chatbot tiếp tục áp dụng những chủ đề này.
Đối chiếu JD với CV#
“Chưa thể hiện trong CV” là khoảng trống bằng chứng, không đồng nghĩa ứng viên không có năng lực hoặc chưa từng làm.
| JD / Trọng tâm | Bằng chứng CV | Cách chuẩn bị |
|---|---|---|
| SSO, OAuth, IAM | Có trong skills và trách nhiệm CIRCA | Chuẩn bị flow thật, vai trò, negative case, token/session evidence; không tự thêm IdP chưa được nêu |
| E2EE storage | Chưa nêu trực tiếp | Học threat model, key lifecycle, sharing/revoke/recovery; dùng bài lab thay vì kể như thành tích |
| Automation | Playwright workflow ở CIRCA; Cypress, Detox, agent-browser trong danh sách tools | Chọn ví dụ mình trực tiếp viết/review/debug; phân biệt vận hành workflow với thiết kế framework |
| Java/Python, Rest Assured, OkHttp | Chưa nêu rõ kinh nghiệm/ngôn ngữ automation | Luyện bài Python/Java và đọc request/assertion; không nhận production experience chỉ từ việc học mẫu |
| Selenium, Appium | Không có trong danh sách tools CV | So sánh với công cụ đã biết, làm POC nếu cần; tránh đánh đồng Detox với Appium |
| Postman, API, SQL | Có API, database validation và defect investigation | Chuẩn bị một lỗi tìm qua network → API → SQL và cách chứng minh fix |
| JMeter/k6 | Có JMeter và phân tích hiệu năng; chưa nêu k6 | Chuẩn bị workload và evidence JMeter thật, học threshold và model tải của k6 |
| GitLab/Jenkins/CI | CV có Git, chưa mô tả ownership pipeline | Nắm stages, runner, secrets, reports, gate; trình bày mức tham gia thật |
| AI tools | AI-assisted workflows, harness, skills/rules/agents, MCP, spec-driven automation | Giải thích context, tool permissions, oracle, trace và cách đo giá trị sau review |
| Enterprise chatbot | Chưa nêu dự án chatbot AI | Phân biệt chat Connexion với RAG/LLM evaluation; luyện retrieval, hallucination và quyền dữ liệu |
| Advertising | Chưa nêu trực tiếp | Liên hệ kinh nghiệm tracking, tiền, quota, reconciliation từ retail; học attribution/billing |
| Domain nghiệp vụ | POS, promotion, voucher, loyalty, payment/refund, inventory, delivery | Chuẩn bị decision table, invariant và concurrency case từ CIRCA |
| Web/mobile và dự án đa dạng | Booking, bản đồ, connected device, website builder, Connexion | Nêu trade-off theo từng domain; không suy ra giao thức thiết bị hay E2EE khi CV chưa nói |
| Senior/Lead, mentoring | Chức danh liệt kê là Software QC Engineer, chưa có bằng chứng hai năm Lead | Dùng ví dụ ownership/review/mentoring có thật; trao đổi rõ phạm vi Member hoặc Lead |
| 5+ năm | Summary ghi 5+; timeline công việc bắt đầu 05/2022 | Rà lại mốc trước đó nếu có; không cộng chồng freelance với full-time |
Phạm vi 19 nhóm#
Thứ tự ưu tiên ôn#
- SSO/OAuth/IAM/E2EE: câu 21–94. Vẽ flow, chỉ ra trust boundary, rồi chọn một positive case, một negative case và một failure/recovery case cho mỗi chủ đề.
- Bằng chứng từ CV: câu 1–10, 163–182. Chuẩn bị câu chuyện thật có vai trò cá nhân, evidence và giới hạn. Không biến tình huống hypothetical trong tài liệu thành lịch sử dự án.
- Automation và điều tra: câu 95–144, bài 195–198. Thực hành đọc/sửa assertion, setup dữ liệu, concurrency và pipeline gate.
- AI và chatbot: câu 145–162. Đặc biệt phân biệt dùng AI hỗ trợ QC với kiểm thử một sản phẩm AI; hai nhóm cần oracle khác nhau.
- QA strategy, Lead và domain mới: câu 11–20, 183–194, bài 199–200. Luyện quyết định theo rủi ro và giải thích trade-off.
Lộ trình bảy buổi#
Mỗi buổi gợi ý 90–120 phút; có thể chia nhỏ theo thời gian thực tế. Không cần đọc hết theo số thứ tự trước khi luyện nói.
| Buổi | Nội dung | Đầu ra tự kiểm chứng |
|---|---|---|
| 1 | CV, QA nền tảng, SSO | Giới thiệu 90 giây; sơ đồ IdP và hai app; bảng session/logout |
| 2 | OAuth/OIDC | Code + PKCE flow; phân biệt token; negative matrix state/nonce/redirect |
| 3 | IAM và tình huống offboarding | Permission matrix hai tenant; timeline revoke; test API trái quyền |
| 4 | E2EE | Luồng plaintext/khóa; ma trận tamper; phân biệt recovery và password reset |
| 5 | Automation, API, SQL, CI, performance | Làm bài 195–198; giải thích một flaky case và một workload |
| 6 | AI/chatbot, CIRCA, dự án khác, ads | Bộ eval nhỏ có quyền truy cập; hai STAR thật; attribution case |
| 7 | Mock interview hai vòng | Chấm theo rubric, ghi câu yếu, ôn lại cùng một tình huống bằng lời của mình |
Mock interview vòng 1 — Technical với Team Lead#
Khung luyện 75 phút, không phải thời lượng công ty xác nhận:
- 5 phút: giới thiệu và phạm vi trực tiếp làm ở CIRCA — câu 1, 3, 5.
- 20 phút: code + PKCE, JWT, permission matrix — câu 34–41, 53–61.
- 15 phút: E2EE sharing/recovery/revoke — câu 67, 70, 76–82.
- 15 phút: thiết kế automation, flaky test, API timeout/idempotency — câu 95–104, 112–114.
- 15 phút: một bài thực hành 195–199, giải thích expected và negative case.
- 5 phút: câu hỏi ngược và vùng kiến thức cần bổ sung.
Với mỗi câu: định nghĩa ngắn → case cụ thể → expected → evidence → failure mode/trade-off. Nếu chưa làm thực tế, mở đầu “Em chưa trực tiếp triển khai phần này; cách em sẽ kiểm thử là…” rồi giải thích phương án.
Mock interview vòng 2 — Head of Tech#
Khung luyện 45 phút:
- 10 phút: phạm vi ownership, “5+ years”, khoảng trống Senior/Lead — câu 2, 4, 8–10.
- 15 phút: release rủi ro, sự cố production, phối hợp và metrics — câu 15, 20, 189–193.
- 10 phút: ứng dụng AI có kiểm chứng, lợi ích và giới hạn — câu 7, 145–154.
- 10 phút: kỳ vọng hai chiều, trách nhiệm Member/Lead, onboarding, onsite và câu hỏi ngược — câu 194.
Đừng chỉ nói “em sẽ trao đổi với team”. Nêu rõ dữ liệu mang vào cuộc trao đổi, lựa chọn đưa ra, khuyến nghị và ai có quyền quyết định.
Tự chấm và chuẩn bị evidence#
Tự chấm mỗi câu từ 0 đến 3: 0 chưa hiểu; 1 nói được khái niệm; 2 thiết kế được case có expected/evidence; 3 giải thích được failure mode, giới hạn và trade-off. Đây là thang luyện tập, không quy đổi máy móc thành chức danh.
Chuẩn bị năm câu chuyện thật: một lỗi nghiệp vụ phức tạp, một vấn đề auth/quyền, một cải tiến automation, một quyết định release và một bài học phối hợp. Với mỗi câu chuyện, ghi bối cảnh, việc mình làm, bằng chứng, kết quả được xác minh và điều sẽ cải thiện. Không đưa dữ liệu nội bộ hay credential vào bộ tài liệu phỏng vấn.
Nguồn và giới hạn của ví dụ#
Các explanation có 34 liên kết đọc thêm tới RFC/IETF, OpenID Foundation, OWASP và tài liệu chính thức của công cụ. Kiểm tra lại version/config khi áp dụng; hành vi sản phẩm vẫn cần được xác nhận bằng contract. Các tiêu chí performance, endpoint API, schema SQL, role policy và rubric trong bài tập là giả định minh họa, không phải thông tin nội bộ của công ty tuyển dụng.
Đáp án TypeScript/Java là mẫu tích hợp cần môi trường và dependency tương ứng; chưa thể chứng minh chạy với API thật khi chưa có hệ thống đích. Python và SQL có thể thử độc lập bằng dữ liệu giả. Mọi case tấn công ở đây phục vụ kiểm thử trong môi trường được phép.