Ngày 7 — Mock interview và HR
Mục tiêu ngày 7
Ngày cuối — không học mới, tổng hợp + luyện. Sau ngày 7:
- Giới thiệu bản thân 2 phút trôi chảy.
- Trả lời 6 câu HR kinh điển không vấp.
- Deal lương fresher đúng cách (không phá giá, không quá tham).
- Tự mock 30 câu bấm giờ — biết mình yếu chỗ nào.
- Viết được email follow-up sau phỏng vấn.
1. Framework STAR — kể tình huống chuyên nghiệp
- Situation — bối cảnh.
- Task — nhiệm vụ của bạn.
- Action — bạn đã làm gì.
- Result — kết quả + bài học.
1.1. Ví dụ STAR cho fresher
Câu: "Kể về một dự án bạn đã làm."
Cấu trúc đáp:
(S) Trong project tốt nghiệp Học kỳ 7, em làm trưởng nhóm 3 người, build hệ thống quản lý đơn hàng cho 1 quán cafe nhỏ. Tech stack ASP.NET Core 8 + EF Core + SQL Server. Thời gian 8 tuần.
(T) Vai trò của em: thiết kế kiến trúc, làm backend (API + DB) và lead integration với frontend.
(A) Em chia hệ thống thành 3 module: Order, Menu, Reporting. Áp Repository pattern cho data access. Khi gặp performance issue ở page dashboard (3 giây load), em dùng Stopwatch + SQL Profiler tìm ra N+1 problem trong EF Core query — đã fix bằng cách switch sang
.Include()+ projection.(R) Page load từ 3 giây xuống 200ms. Project được điểm A. Bài học lớn nhất: đo đạc trước khi optimize — em từng đoán là index thiếu, hoá ra là N+1.
Chú ý: kết quả phải đo được (3s → 200ms), bài học cụ thể (đo trước khi đoán).
1.2. STAR cho câu "Kể thất bại"
(S) Học kỳ trước, em apply cho 1 vị trí intern. Vòng technical em làm tốt, nhưng vòng HR em bị từ chối.
(T) Em phải kể project và xử lý câu hỏi behavioral.
(A) Em đã quá tập trung vào kỹ thuật, không research công ty trước. Khi HR hỏi "vì sao em chọn cty này", em chỉ trả lời chung chung "vì cty nổi tiếng".
(R) Em trượt. Bài học: cuộc phỏng vấn không chỉ là kỹ thuật. Lần sau em luôn dành 1 buổi research cty (sản phẩm, tech blog, văn hoá) trước khi đi.
→ Admit thất bại + bài học ăn điểm hơn nhiều câu giả vờ "em chưa từng fail".
2. Giới thiệu bản thân — PEEL framework
- Position: em là ai, học/làm gì.
- Experience: tech stack, thời gian, project nổi bật.
- Excellence: thành tựu cụ thể nhất.
- Link: vì sao apply cty này.
2.1. Template
"Em là Tên, vừa tốt nghiệp / năm cuối ngành CNTT trường Trường.
Khoảng X tháng gần đây, em tập trung vào .NET stack — C#, ASP.NET Core, EF Core, SQL Server. Đã làm N project cá nhân trên GitHub, project nổi bật nhất là tên + 1 câu mô tả — em build từ A đến Z gồm backend API, database design, deploy lên Azure.
Bài học lớn nhất em rút được là 1 bài học kỹ thuật cụ thể — ví dụ: hiểu được N+1 problem trong EF Core và cách dùng projection để fix.
Em apply vị trí Fresher .NET ở cty vì 1 lý do CỤ THỂ về cty đó — em đọc blog tech của team, thấy cty đang dùng .NET 8 + microservices, em muốn học từ môi trường có code review nghiêm chỉnh.
Ngoài coding, em 1 sở thích ngắn. Em sẵn lòng chia sẻ chi tiết về bất kỳ project nào trong CV."
2.2. Tips delivery
Pace
Pause
Smile
Practice
3. 6 câu HR kinh điển
3.1. "Điểm mạnh của bạn?"
Template:
"Em có 2 điểm mạnh:
Thứ nhất, em chủ động học — em tự build 3 project .NET trên GitHub dù trường chỉ yêu cầu 1. Khi muốn hiểu EF Core sâu, em đọc source code trên GitHub + làm POC riêng cho lazy loading, change tracking.
Thứ hai, em comfortable với việc nói "em chưa biết" — em luôn ưu tiên hỏi sớm khi không hiểu thay vì đoán bừa. Trong project nhóm vừa rồi, em chủ động họp với mentor 30 phút mỗi tuần, đặt sẵn câu hỏi list ra — ra trường nhanh hơn."
3.2. "Điểm yếu của bạn?"
- Thật — recruiter biết khi bịa.
- Đang cải thiện — không nhận yếu rồi để đó.
- Không phải kỹ năng cốt lõi của job — đừng nói "em yếu OOP" khi apply .NET.
"Em chưa làm việc với hệ thống large-scale production, nên kinh nghiệm tối ưu DB ở mức TB-scale còn hạn chế. Em chỉ làm với dataset vài chục nghìn row.
Để khắc phục, em đang đọc cuốn 'Designing Data-Intensive Applications' và làm bài lab về indexing trên dataset 1M row trên LeetCode SQL. Em mong môi trường công ty cho em cơ hội thực sự touch system lớn."
3.3. "Vì sao bạn chọn công ty chúng tôi?"
❌ Cấm: "Vì công ty nổi tiếng", "Lương cao", "Môi trường tốt".
✅ Đáp với 2–3 chi tiết cụ thể về cty đó:
"Em chọn cty vì 3 lý do.
Thứ nhất, em đọc trên LinkedIn rằng team .NET đang migrate sang .NET 9 và áp dụng clean architecture. Em đã làm POC clean architecture trong project cá nhân nên rất muốn học cách team áp dụng ở quy mô lớn.
Thứ hai, sản phẩm của cty trong mảng fintech/e-commerce/healthtech có business logic phức tạp, em thấy thử thách hơn nhiều CRUD app đơn giản.
Thứ ba, em xem video của anh tên engineer của cty trên YouTube về tech talk EF Core performance — em muốn học từ team có người chia sẻ tech ngoài cộng đồng."
→ Phải research trước — LinkedIn, blog tech của cty, Glassdoor, ITviec profile.
3.4. "Mục tiêu 1 năm / 3 năm tới?"
- 1 năm: vững nền + xong 1–2 dự án thực tế + đóng góp được giải pháp nhỏ.
- 3 năm: lên junior solid → middle, master 1 mảng (web API, microservice, hoặc cloud).
"Trong 1 năm đầu, em muốn trở thành junior solid — đóng góp tin cậy cho team, hiểu rõ codebase, học sâu 1 mảng (em đang muốn focus vào ASP.NET Core internals hoặc distributed systems).
2–3 năm sau, em muốn lên mid-level — có thể lead 1 feature từ design đến deploy, và mentor được fresher tiếp theo (theo cách em đang được mentor)."
Tránh: "Em muốn lên CTO trong 3 năm" (sến / không realistic).
3.5. "Lương mong muốn là bao nhiêu?"
"Theo báo cáo lương ITviec 2025–2026, fresher .NET HCM khoảng 8–15 triệu VND. Với background hiện tại (3 project cá nhân, intern 3 tháng), em mong muốn khoảng 10–13 triệu — chọn giữa khoảng.
Tuy nhiên em ưu tiên môi trường học hỏi và mentor quality hơn 1–2 triệu chênh lệch, nên em cởi mở với offer của cty. Anh/chị cho em biết khung lương vị trí này không ạ?"
Chiến thuật:
- ✅ Đưa khoảng, không số cứng.
- ✅ Có dẫn chứng (báo cáo lương).
- ✅ Thể hiện linh hoạt nhưng không phá giá.
- ✅ Hỏi ngược để biết khung của cty.
- ❌ Tránh "tuỳ công ty" — bị đánh giá thiếu chuẩn bị.
- ❌ Tránh quá thấp (8tr cho cty product) hoặc quá cao (18tr không kinh nghiệm).
3.6. "Bạn có câu hỏi gì cho chúng tôi?"
Gợi ý theo nhóm:
Về team & process:
- "Team .NET hiện tại có bao nhiêu người? Cấu trúc level structure ra sao?"
- "Quy trình code review hoạt động ra sao? Có review tool gì không?"
- "Tech stack cụ thể đang dùng — .NET version, EF Core, deploy stack, CI/CD?"
Về vị trí Fresher:
- "Một ngày làm việc của Fresher trong 3 tháng đầu thường gồm gì?"
- "Onboarding 1 tháng đầu có training gì? Có buddy/mentor không?"
- "Performance được đánh giá theo tiêu chí nào sau 3–6 tháng probation?"
Về cá nhân interviewer (chỉ với senior/lead):
- "Anh/chị làm ở đây bao lâu rồi? Điều gì khiến anh/chị gắn bó với team này?"
❌ Tránh hỏi về lương/benefit ở vòng technical — để vòng HR.
4. Mock interview — 30 câu, bấm giờ 60 phút
Phần A — Lý thuyết (15 câu, 25 phút)
- Stack và Heap khác nhau ra sao? Lưu cái gì?
- Value type vs Reference type — cho ví dụ.
constvsreadonly— chọn choPilà gì?- String immutable nghĩa là gì? Khi nào dùng
StringBuilder? - Boxing/Unboxing là gì? Tại sao tránh?
- Kể 4 tính chất OOP + ví dụ Inheritance.
- Interface vs Abstract class — khi nào dùng cái nào?
- SOLID — viết tắt + giải thích D.
IEnumerablevsIQueryable— khác gì?async/awaitcó tạo thread mới không? Giải thích.- Singleton/Scoped/Transient — chọn cho
DbContext? - INNER JOIN vs LEFT JOIN — vẽ tay 2 bảng.
- INDEX là gì? Khi nào không nên tạo?
- ACID — A và I nghĩa là gì?
- REST: POST vs PUT vs PATCH — cái nào idempotent?
Phần B — Code/Scenario (10 câu, 25 phút)
- Cho
List<User>, viết LINQ lấy top 3 user tuổi cao nhất ở HCM. - Viết hàm C# kiểm tra palindrome.
- Two Sum bằng C# trong O(n).
- Viết câu SQL: lấy 5 khách hàng có tổng đơn cao nhất.
- Viết câu SQL: tìm email trùng trong bảng Users.
- Cho đoạn EF Core có N+1 — chỉ ra và sửa.
- Viết custom middleware log thời gian request.
- Đăng ký
DbContexttrong Program.cs ra sao? Vì sao Scoped? - API trả 500 — debug ra sao?
- Override
EqualsvàGetHashCode— vì sao phải làm cả 2?
Phần C — Behavioral (5 câu, 10 phút)
- Giới thiệu bản thân 2 phút.
- Project nổi bật nhất — khó nhất là gì, học được gì?
- Vì sao chọn .NET thay vì Java / Node?
- Bạn xử lý conflict trong team ra sao?
- Bạn có câu hỏi gì cho chúng tôi?
- Đánh dấu câu trả lời trôi chảy ✅ vs câu vấp ❌.
- Quay lại Day 1–6 ôn câu vấp.
- Tự mock lần 2 sau 2–3 giờ — chỉ những câu chưa tốt.
5. Checklist trước ngày phỏng vấn
- "Em xin 30s suy nghĩ" — luôn được chấp nhận.
- Nói thành tiếng cách suy nghĩ — interviewer đánh giá process.
- Không biết: "Em chưa được học chỗ này, nhưng em đoán là...". Trung thực ăn điểm.
6. Email follow-up sau phỏng vấn
Template
Tiêu đề: Cảm ơn buổi phỏng vấn vị trí Fresher .NET — [Tên bạn]
Kính gửi anh/chị [tên interviewer],
Em cảm ơn anh/chị đã dành thời gian phỏng vấn em vị trí Fresher .NET
Developer sáng/chiều nay. Em đặc biệt ấn tượng với phần [chi tiết cụ
thể từ buổi nói chuyện — ví dụ: "anh/chị chia sẻ về quy trình code
review của team" hoặc "cách dự án X áp dụng clean architecture"].
Em rất mong có cơ hội đóng góp cho team. Nếu cần thêm thông tin gì về
em, anh/chị đừng ngại liên hệ.
Trân trọng,
[Tên bạn]
SĐT: ...
GitHub: github.com/...
LinkedIn: linkedin.com/in/...
3 yếu tố quan trọng:
- Chi tiết cụ thể từ buổi nói chuyện (không generic "cảm ơn").
- Tone professional + cảm ơn.
- Để lại contact info đầy đủ.
7. Nếu trượt phỏng vấn?
- Gửi email cảm ơn + xin feedback — lịch sự, ngắn, không van xin.
- Ghi lại câu hỏi bị vấp vào 1 file riêng — ôn lại trong tuần.
- Apply tiếp 5–10 cty khác trong tuần đó — momentum quan trọng.
- Một tháng sau có thể apply lại cty cũ nếu họ mở fresher batch mới — không xấu hổ.
Email xin feedback
Kính gửi anh/chị [tên],
Em cảm ơn phản hồi của team. Em chấp nhận kết quả và mong được nâng
cao bản thân cho cơ hội sau.
Nếu anh/chị có thể chia sẻ 1–2 điểm em cần cải thiện (kỹ thuật hoặc
soft skill), em sẽ rất biết ơn. Phản hồi của anh/chị giúp em định
hướng học tốt hơn.
Cảm ơn anh/chị một lần nữa.
Trân trọng,
[Tên bạn]
→ ~30% recruiter sẽ cho feedback nếu hỏi lịch sự. Đó là vàng cho lần sau.
8. Tổng kết 7 ngày
- Day 1: Stack/heap, value/reference, boxing, exception.
- Day 2: OOP 4 tính chất, SOLID, vtable.
- Day 3: Generic, LINQ deferred, async/await state machine.
- Day 4: B-tree INDEX, MVCC, isolation level.
- Day 5: Middleware pipeline, DI captive, EF Core N+1.
- Day 6: Big O, DSA framework 8 bước.
- Day 7: STAR, PEEL, deal lương, follow-up.
- Cheat Sheet — 30 phút.
- Ngân hàng câu hỏi từng chủ đề — câu nào bạn còn vấp.
9. Câu hỏi tự test cuối ngày
- STAR là gì? 4 phần?
- PEEL là gì? Áp dụng cho câu hỏi nào?
- Khi không biết câu trả lời — bạn sẽ làm gì?
🎉 Quay lại Lộ trình hoặc xem Cheat Sheet.