Kế hoạch ôn bảo vệ

Mục tiêu không phải thuộc từng file, mà là trả lời được luồng từ UI -> API -> use case -> DB -> runtime.

Lộ trình 3 vòng

Vòng 1: Nắm xương sống

  1. Đọc Bản đồ trả lời nhanh để có khung 60 giây và 12 luồng cần thuộc.
  2. Đọc Kiểm toán độ sẵn sàng để biết evidence và cách nói thận trọng.
  3. Đọc Kiến trúc tổng quan.
  4. Đọc Luồng nghiệp vụ để nắm UI -> API -> use case -> DB.
  5. Đọc Vị trí file code để biết sửa UI, logic, API, database ở đâu.
  6. Đọc UX/UI và design system để biết cách giải thích thiết kế, đổi màu, đổi layout và smoke UI.
  7. Đọc Ma trận bao phủ tài liệu để biết mỗi mảng đã nằm ở trang nào.
  8. Đọc Source mapSQL schema catalog.
  9. Đọc Thuật ngữ tra nhanh để nắm các từ dễ bị hỏi như DDD, ABR, Pointy, publication, content_blocks.
  10. Mở Full File CodeMap, thử search CourseAuthoringControllerV3, PaymentControllerV3, WiiiContextService.
  11. Chạy docs site và LMS local nếu cần demo.
  12. Đọc Kịch bản demo và báo cáo để biết thứ tự trình bày 10-15 phút.

Vòng 2: Thuộc luồng nghiệp vụ

Luồng Trang cần đọc
Evidence tài liệu đã sẵn sàng Kiểm toán độ sẵn sàng
12 luồng cốt lõi Bản đồ trả lời nhanh
UX/UI và đổi giao diện UX/UI và design system
Login/role/org Roles và permission
Course editor -> publication Publication versioning
Upload Word/PDF/DOCX API endpoint index, Backend Spring Boot
Video/offline Video và offline, Interactive video và storage health
Quiz/assignment Assessment nâng cao
Payment Payment và revenue
Wiii Wiii integration
STCW/competency STCW competency map
Database đủ bảng SQL schema catalog

Vòng 3: Luyện câu hỏi

  • Đọc Câu hỏi bảo vệ trước để lấy câu trả lời khung.
  • Dùng Bộ câu hỏi luyện vấn đáp để tự test theo nhóm chủ đề.
  • Dùng Checklist chất lượng docs để kiểm font, search, link, layout và evidence.
  • “Nếu em sửa màu nút thì sửa ở đâu?”
  • “Vì sao giao diện này hợp lý cho một LMS vận hành, không phải landing page?”
  • “Nếu em thêm trường DB thì làm thế nào?”
  • “Vì sao học viên chưa thấy bài mới?”
  • “Database có bao nhiêu bảng và vì sao version cuối là V135?”
  • “Wiii có được tự publish hoặc submit quiz không?”
  • “Payment làm sao tránh user tự sửa giá trên frontend?”
  • “Offline lưu gì ở IndexedDB và khi lỗi thì sửa thế nào?”
  • “Video mới đi qua pipeline nào?”
  • “ORG_ADMIN khác ADMIN và TEACHER ở đâu?”
  • “Nếu 20.000 hoặc 500.000 người vào cùng lúc thì cần kiểm tra gì?”

Câu trả lời khung

Khi bị hỏi một chức năng bất kỳ, trả lời theo mẫu:

Frontend route/component nào hiển thị?
Service/API client nào gọi backend?
Controller nào nhận request?
Use case nào giữ business rule?
Repository/entity/table nào lưu dữ liệu?
Guard/permission/ownership nào chặn sai quyền?
Test/smoke nào chứng minh không vỡ?

Nếu chưa nhớ tên file, dùng search bar của docs site trước, rồi mở Full CodeMap để đi tới file cụ thể.