CV junior developer: 10 lỗi khiến bạn bị loại từ vòng hồ sơ
10 lỗi hay gặp trong CV junior developer qua một CV trước và sau khi sửa: mục tiêu sáo rỗng, kỹ năng kê khống, dự án không link. Có mẫu và checklist.
Bạn gửi CV đi nhiều nơi mà không được gọi phỏng vấn? Phần lớn CV junior developer bị loại không phải vì thiếu kinh nghiệm, mà vì người đọc không tìm thấy bằng chứng bạn làm được việc. Hãy cùng mình sửa 10 lỗi hay gặp nhất trên một CV mẫu nhé!
Vì sao Minh gửi 30 hồ sơ mà không ai gọi lại?
Đây là bài đầu tiên của series Hành trình junior, theo chân Minh từ lúc viết CV cho đến khi hết thời gian thử việc. Minh là nhân vật minh họa, được ghép từ những tình huống rất quen thuộc của sinh viên IT mới ra trường. Câu chuyện là hư cấu, nhưng các lỗi và cách sửa thì hoàn toàn có thật.
Minh vừa tốt nghiệp ngành Công nghệ thông tin. Trong hai tuần, Minh gửi cùng một bản CV cho khoảng 30 tin tuyển dụng React. Không nơi nào gọi lại, kể cả những nơi ghi rõ là nhận fresher. Minh bắt đầu nghĩ rằng mình chưa đủ giỏi và tính đăng ký thêm một khóa học nữa.
Trước khi đăng ký khóa học, chúng ta hãy cùng xem CV của Minh. Đây là toàn bộ nội dung bản CV, viết lại dưới dạng chữ cho dễ đọc. Dòng cuối mô tả hình thức của file mà Minh đã gửi đi:
**Lê Văn Minh** — minhdeptrai99@gmail.com — 09xx xxx xxx
Ảnh: ảnh chụp ở quán cà phê, đeo kính râm
## Mục tiêu nghề nghiệp
Mong muốn được làm việc trong môi trường chuyên nghiệp, năng động để học hỏi
và phát triển bản thân, đóng góp cho sự phát triển của công ty.
## Kỹ năng
Javascript 80% · ReactJs 75% · NodeJS 70% · Java 60% · C++ 60% · Python 50% ·
PHP 40% · MongoDB · MySQL · Docker · AWS · Kubernetes · Figma · Photoshop ·
Làm việc nhóm · Chịu được áp lực cao
## Dự án
**Website bán hàng** (đồ án tốt nghiệp, nhóm 4 người)
- Làm website bán hàng bằng ReactJs và NodeJS.
- Có chức năng đăng nhập, giỏ hàng, thanh toán.
**Netflix clone** — Làm theo khóa học trên YouTube.
**Todo app**
## Học vấn
Đại học X, Công nghệ thông tin, 2022–2026, GPA 3.1
## Sở thích
Đọc sách, du lịch, nghe nhạc.
(File gửi đi: CV-final-2.docx — 3 trang, bố cục 2 cột, thanh % kỹ năng, nền màu)Bạn thử đếm xem mình tìm được bao nhiêu lỗi trước khi đọc tiếp. Có ít nhất 10 lỗi trong đoạn này.
Người lọc CV đang tìm gì?
Muốn sửa CV cho đúng, bạn cần hiểu người đọc trước. Ở vòng hồ sơ, người cầm CV của bạn có thể là nhân viên tuyển dụng hoặc một developer trong team. Người đó đang cố trả lời ba câu hỏi.
Câu thứ nhất là bạn có biết đúng những thứ mà vị trí này cần hay không. Câu thứ hai là bạn đã tự làm ra được thứ gì chạy được chưa, và với junior thì câu trả lời gần như luôn nằm ở mục dự án. Câu thứ ba là bạn có cẩn thận hay không, vì lỗi chính tả, link hỏng hay tên file đặt tùy tiện đều cho thấy câu trả lời là "không".
Người tuyển dụng đọc rất nhiều CV cho mỗi vị trí, nên họ không có thời gian tìm thông tin giúp bạn. Thông tin nào không nằm ở chỗ dễ thấy thì coi như không có. Nhà tuyển dụng quan tâm bạn làm được gì cho vị trí đó, chứ không quan tâm bạn mong muốn gì.
Nếu bạn nhớ ba câu hỏi này, 10 lỗi dưới đây sẽ trở nên rất dễ hiểu.
Ba lỗi đầu tiên: CV không viết cho đúng vị trí
1. Một bản CV gửi cho mọi nơi
Minh ứng tuyển vị trí React, nhưng mục kỹ năng lại xếp Java, C++, Python và PHP ngang hàng với React. Người đọc phải tự tìm phần liên quan trong 15 kỹ năng, và phần lớn người đọc sẽ không làm việc đó.
Cách sửa mà mình khuyên là giữ một bản CV gốc thật đầy đủ cho riêng bạn. Mỗi lần nộp hồ sơ, bạn tạo một bản rút gọn, đưa những kỹ năng và dự án khớp với mô tả công việc lên đầu, và bỏ đi những gì không liên quan. Bạn cũng nên dùng đúng từ ngữ trong tin tuyển dụng, như "REST API" hay "TypeScript", vì nhiều công ty dùng phần mềm dò từ khóa để lọc CV trước khi có người thật đọc. Mỗi lần nộp sẽ tốn thêm khoảng mười phút, nhưng mười hồ sơ được viết riêng thường hiệu quả hơn ba mươi hồ sơ giống hệt nhau.
2. Mục tiêu nghề nghiệp sáo rỗng
Câu "Mong muốn được làm việc trong môi trường chuyên nghiệp, năng động để học hỏi và phát triển bản thân" xuất hiện trong hàng nghìn CV khác. Câu này nói lên điều Minh muốn, nhưng không cho biết Minh làm được gì.
Bạn hãy thay câu đó bằng hai, ba dòng tóm tắt những việc bạn đã làm và người đọc có thể kiểm chứng được:
Frontend developer mới tốt nghiệp, đã xây 2 ứng dụng React + TypeScript có người dùng thật (link bên dưới). Quen làm việc theo pull request trên GitHub, viết test bằng Vitest và deploy lên Vercel.
Mỗi cụm từ trong đoạn này đều dẫn tới một thứ mà người đọc có thể bấm vào để xem.
3. Danh sách kỹ năng giống một kho từ khóa
Minh liệt kê 15 kỹ năng, kèm theo thanh phần trăm như "Javascript 80%". Trong danh sách có cả Kubernetes và AWS, hai thứ mà Minh mới chỉ xem qua một video. Thậm chí "chịu được áp lực cao" cũng nằm lẫn giữa các công nghệ.
Thanh phần trăm không mang ý nghĩa gì với người đọc, vì không ai biết 80% đó là so với cái gì. Việc liệt kê quá nhiều kỹ năng còn nguy hiểm hơn bạn nghĩ, vì kỹ năng nào trong CV cũng có thể trở thành câu hỏi phỏng vấn. Nếu bạn ghi Kubernetes, bạn phải sẵn sàng giải thích pod là gì. Ở phần sau của bài, mình sẽ kể một đoạn phỏng vấn để bạn thấy chuyện này diễn ra như thế nào.
Cách sửa là chia kỹ năng thành hai nhóm. Nhóm "thành thạo" gồm những thứ bạn đã dùng trong dự án và có thể nói về nó trong mười phút. Nhóm "đã làm quen" gồm những thứ bạn từng dùng và hiểu ở mức cơ bản. Mỗi kỹ năng trong nhóm thành thạo đều phải xuất hiện trong ít nhất một dự án ở bên dưới. Với kỹ năng mềm, bạn hãy chứng minh nó trong phần mô tả dự án, chẳng hạn "review pull request cho 3 thành viên", thay vì chỉ liệt kê.
Bốn lỗi tiếp theo: mục dự án không chứng minh được gì
Với junior, mục dự án là phần quyết định. Người đọc muốn thấy bạn đã tự làm ra được một thứ chạy được.
4. Dự án không có link, hoặc link bị hỏng
Cả ba dự án của Minh đều không có link nào. Có thể "Website bán hàng" là một sản phẩm tốt, nhưng người đọc không có cách nào biết được điều đó.
Mỗi dự án cần có link tới repo và link tới bản chạy thử. Trước mỗi lần gửi CV, bạn hãy bấm lại từng link, kể cả trên điện thoại. Bản demo trên các nền tảng miễn phí có thể bị tạm dừng sau một thời gian không có ai truy cập, nên bạn nên mở thử một lần để chắc chắn nó vẫn hoạt động.
5. Repo không có README
Giả sử Minh đã thêm link repo. Người đọc mở ra và chỉ thấy các thư mục src, public cùng file package.json. Họ không biết dự án làm gì, chạy như thế nào và Minh đã làm phần nào, nên họ đóng tab.
Một README tối thiểu cần có ảnh chụp màn hình, một câu mô tả dự án giải quyết vấn đề gì, danh sách công nghệ đã dùng và lệnh để chạy dự án trên máy. README là trang đầu tiên mà người khác nhìn thấy về sản phẩm của bạn, và bài README là điểm bắt đầu của một sản phẩm tốt có hướng dẫn chi tiết cách viết.
6. Mô tả tính năng thay vì mô tả việc mình làm
Minh viết: "Làm website bán hàng bằng ReactJs và NodeJS. Có chức năng đăng nhập, giỏ hàng, thanh toán." Đây chỉ là danh sách tính năng. Nó không cho biết Minh giỏi đến đâu, và cũng không cho biết trong nhóm bốn người, Minh đã làm phần nào.
Mỗi gạch đầu dòng nên có ba thông tin: bạn đã làm gì, bạn làm bằng cách nào và kết quả ra sao. Với dự án làm nhóm, bạn cần ghi rõ phần việc của mình:
Phần của mình: giỏ hàng và thanh toán (React, Context API), trang quản lý đơn. Giảm thời gian tải trang danh sách sản phẩm bằng phân trang và nén ảnh WebP. Review pull request cho 3 thành viên còn lại; quy ước commit theo Conventional Commits.
Người phỏng vấn sẽ hỏi sâu vào đúng phần việc mà bạn nhận là của mình. Vì vậy, bạn chỉ nên ghi những gì bạn có thể giải thích được.
7. Dự án làm theo video và giữ nguyên
Minh ghi "Netflix clone, làm theo khóa học trên YouTube" và "Todo app". Hàng trăm ứng viên khác cũng có đúng hai dự án này.
Học theo video không có gì xấu, đó là một cách học tốt. Tuy nhiên, dự án làm theo video chưa cho thấy bạn tự giải quyết được vấn đề, vì vấn đề đã được người làm video giải quyết sẵn.
Bạn có hai cách để cải thiện. Cách thứ nhất là thêm vào dự án những thứ mà video không có, như lưu dữ liệu thật, đăng nhập, viết test hay deploy, rồi ghi rõ trong README bạn đã thêm gì. Cách thứ hai, theo mình là tốt hơn, là làm một dự án nhỏ giải quyết vấn đề của chính bạn. Minh đã bỏ Netflix clone và thay bằng một app ghi chi tiêu qua tin nhắn mà Minh dùng hằng ngày. Bài viết tiếp theo của series sẽ bàn về cách chọn dự án như vậy.
Ba lỗi cuối cùng: hình thức làm hỏng nội dung
8. Thiết kế quá cầu kỳ và quá dài
CV của Minh dài ba trang, chia hai cột, có màu nền, có thanh phần trăm và được lưu dưới dạng file Word.
CV hai cột với biểu tượng và chữ nằm trong hình có thể trông đẹp, nhưng phần mềm lọc CV thường đọc sai kiểu bố cục này, khiến thông tin bị xáo trộn hoặc mất hẳn. File Word cũng có thể bị vỡ định dạng trên máy của người nhận. Một CV một cột, tiêu đề rõ ràng, phông chữ dễ đọc và được xuất ra PDF là đủ. Với junior, CV dài một trang là tốt nhất, và ITviec khuyên không nên dài quá hai trang. Nếu không đủ chỗ, bạn hãy bỏ bớt những gì không liên quan đến vị trí ứng tuyển thay vì thu nhỏ chữ.
9. Sai chính tả, sai tên công nghệ và thông tin thiếu nghiêm túc
Trong CV của Minh có "Javascript", "ReactJs", "NodeJS", email minhdeptrai99@gmail.com, ảnh đeo kính râm ở quán cà phê và tên file CV-final-2.docx.
Mỗi lỗi riêng lẻ thì nhỏ, nhưng khi cộng lại, người tuyển developer sẽ đánh giá rằng bạn không để ý đến chi tiết, trong khi công việc hằng ngày của developer lại cần đúng điều đó.
Bạn hãy viết đúng tên chính thức của công nghệ: JavaScript, TypeScript, React, Node.js, GitHub, PostgreSQL. Email nên được đặt theo họ tên. Nhiều công ty IT không yêu cầu ảnh, còn nếu có ảnh thì bạn nên chọn ảnh chân dung chỉn chu. Tên file nên đặt theo dạng LeVanMinh-Frontend-CV.pdf. Cuối cùng, bạn hãy đọc to CV một lượt và nhờ thêm một người khác đọc lại.
10. Có link GitHub nhưng trang cá nhân trống trơn
Sau khi sửa chín lỗi trên, Minh thêm link GitHub vào CV. Người đọc mở ra và chỉ thấy vài repo rỗng, còn commit nào cũng chỉ ghi "update" hoặc "fix". Trong nhiều trường hợp, như vậy còn tệ hơn là không để link.
Bạn nên ghim ba, bốn repo tốt nhất lên đầu trang cá nhân. Bạn cũng nên tạo README cho trang cá nhân GitHub, tức là một repo công khai trùng tên với tài khoản của bạn, vì nội dung README của repo này sẽ hiện ngay trên trang cá nhân. Từ hôm nay, bạn hãy viết commit sao cho có ý nghĩa; bài viết commit message dễ đọc có sẵn vài mẫu để bạn dùng ngay.
Vì sao ghi thêm kỹ năng "cho đẹp" lại phản tác dụng?
Chúng ta quay lại lỗi số 3. Giả sử Minh vẫn giữ Docker và AWS trong mục kỹ năng để CV trông đầy đặn hơn, và Minh được gọi đi phỏng vấn. Đây là một đoạn hội thoại rất điển hình (minh họa):
Người phỏng vấn: Mình thấy em ghi Docker. Em dùng Docker trong dự án nào? Minh: Dạ em có học qua ạ, em biết chạy
docker run. Người phỏng vấn: Vậy image khác container thế nào? Dự án bán hàng của em có Dockerfile không? Minh: Dạ… dự án đó em chưa dùng Docker ạ.
Cuộc trao đổi chỉ kéo dài ba phút. Điều mà người phỏng vấn ghi lại không phải là "Minh chưa biết Docker", vì junior chưa biết Docker là chuyện bình thường. Điều họ ghi lại là "Minh ghi vào CV những thứ mình không làm được". Từ lúc đó, mọi dòng khác trong CV, kể cả những dòng đúng, đều bị đọc với một chút nghi ngờ.
Chuyện này xảy ra vì người phỏng vấn thường chuẩn bị câu hỏi dựa trên chính CV của bạn, đó là cách nhanh nhất để kiểm tra một ứng viên. Mỗi dòng trong CV giống như một lời mời "hãy hỏi tôi về điều này". Khi ghi 15 kỹ năng, bạn đang mời người phỏng vấn hỏi về 15 chủ đề. Khi ghi 8 kỹ năng mà kỹ năng nào bạn cũng nói được trong mười phút, bạn đang tự chọn một sân chơi có lợi cho mình.
Trong bản CV đã sửa, Docker vẫn còn, nhưng nằm ở nhóm "đã làm quen". Khi được hỏi, Minh có thể trả lời thật lòng rằng "em mới làm quen, em dùng nó để chạy database trên máy", và với một junior, câu trả lời đó hoàn toàn ổn.
CV của Minh sau một buổi tối sửa lại
Vẫn là Minh, vẫn là những dự án đó, nhưng sau một buổi tối ngồi sửa lại cho vị trí Frontend Developer (React), CV của Minh trông như sau. Đây là toàn bộ bản CV, bạn có thể chép về làm khung rồi thay bằng thông tin của mình. Link và tên tài khoản trong mẫu là ví dụ:
**Lê Văn Minh** — Frontend Developer
minh.le.dev@gmail.com · 09xx xxx xxx · github.com/minh-le-dev · linkedin.com/in/minh-le-dev · TP.HCM
## Tóm tắt
Frontend developer mới tốt nghiệp, đã xây 2 ứng dụng React + TypeScript có người
dùng thật (link bên dưới). Quen làm việc theo pull request trên GitHub, viết test
bằng Vitest và deploy lên Vercel.
## Kỹ năng
- Thành thạo (đã dùng trong dự án): JavaScript, TypeScript, React, Next.js,
HTML/CSS, Git, REST API
- Đã làm quen: Node.js, PostgreSQL (Supabase), Vitest, Docker
## Dự án
**Sổ chi tiêu qua tin nhắn** — dự án cá nhân · repo · demo
- Nhắn "cà phê 35k" để ghi một khoản chi; tổng hợp theo tháng. Next.js, TypeScript.
- Tự viết phần đọc số tiền ("35k", "1tr2", "45.000") kèm 11 test; không dùng thư viện ngoài.
- Mình và vài bạn cùng lớp đang dùng hằng ngày; đã sửa các lỗi từ góp ý của họ.
**Website bán cà phê** — đồ án tốt nghiệp, nhóm 4 người · repo · demo
- Phần của mình: giỏ hàng và thanh toán (React, Context API), trang quản lý đơn.
- Giảm thời gian tải trang danh sách sản phẩm bằng phân trang và nén ảnh WebP.
- Review pull request cho 3 thành viên còn lại; quy ước commit theo Conventional Commits.
## Học vấn
Đại học X — Công nghệ thông tin, 2022–2026
(File gửi đi: LeVanMinh-Frontend-CV.pdf — 1 trang, một cột, không ảnh nền, không thanh %)Mỗi chữ "repo" và "demo" trong CV thật là một đường link bấm được tới repo GitHub và bản chạy thử.
Khi đặt cạnh bản cũ, bạn sẽ thấy ngay sự khác biệt. Tiêu đề nói rõ vị trí ứng tuyển, và phần tóm tắt kể những việc đã làm. Số kỹ năng giảm từ 15 xuống 11, được chia thành hai nhóm, không còn thanh phần trăm và không còn Kubernetes.
Mỗi dự án đều có link, có phần việc của Minh và có kết quả cụ thể. Netflix clone và Todo app đã biến mất, thay vào đó là một dự án do Minh tự nghĩ ra. Toàn bộ CV gói gọn trong một trang, một cột, được lưu dưới dạng PDF và tên file có họ tên.
Bạn hãy kéo lên đọc lại bản cũ rồi so sánh với bản này. Đó là cách nhanh nhất để thấy được sự khác biệt, nhanh hơn việc đọc bất kỳ bài hướng dẫn nào, kể cả bài này.
Cần kiểm tra gì trong mười phút trước khi gửi CV?
Sau đó, bạn rà nhanh thêm vài điểm. Mỗi kỹ năng ở nhóm "thành thạo" đều xuất hiện trong ít nhất một dự án. Mỗi dự án đều có link repo, link demo, README và ghi rõ phần bạn tự làm.
CV không còn câu mục tiêu sáo rỗng, được trình bày một cột, dài một trang, lưu dạng PDF và tên file có họ tên. Mọi link trong CV đều bấm được, kể cả trên điện thoại. Bạn có thể chép những điểm này vào ghi chú trên điện thoại để mỗi lần nộp hồ sơ thì lấy ra kiểm tra một lượt.
CV tốt chỉ giúp bạn bước vào phòng phỏng vấn. Dòng nào trong CV cũng có thể trở thành câu hỏi, nên bạn cần chắc chắn rằng mình có thể kể lại từng dự án trong hai phút. Câu hỏi "kể về dự án bạn tự hào nhất" đã có sẵn cách trả lời trong ngân hàng câu hỏi phỏng vấn. Còn trước khi nhờ người khác sửa CV giúp, bạn hãy thử ba câu tự hỏi trước khi nhờ senior giúp.
Mục dự án vẫn còn mỏng thì phải làm sao?
CV của Minh giờ đã sạch sẽ. Tuy nhiên, khi đặt cạnh tin tuyển dụng, Minh nhận ra mục dự án vẫn còn mỏng. Đồ án tốt nghiệp là dự án làm nhóm, phần việc của Minh chỉ là một phần nhỏ, còn dự án cá nhân thì mới bắt đầu.
Bài viết tiếp theo của series sẽ trả lời đúng câu hỏi mà Minh đang băn khoăn: nên làm dự án cá nhân nào để nhà tuyển dụng thật sự muốn mở ra xem, và làm đến mức nào thì đủ. Bạn có thể theo dõi cả hành trình ở series Hành trình junior.