Tìm việc junior developer: đọc tin tuyển dụng trước khi nộp
Tìm việc junior developer có chiến lược: cách đọc tin tuyển dụng, chấm điểm độ phù hợp, nhận ra dấu hiệu đáng ngại, sửa CV cho từng tin và theo dõi đơn đã nộp.
Tìm việc junior developer nên bắt đầu từ đâu? Theo mình, từ việc đọc kỹ tin tuyển dụng. Bạn tách yêu cầu bắt buộc khỏi yêu cầu ưu tiên, chấm xem tin nào hợp, rồi nộp ít nơi hơn nhưng mỗi nơi một hồ sơ sửa riêng. Bạn đang nộp bao nhiêu đơn mỗi tuần? Cùng mình xem cách Minh làm nhé!
Hồ sơ đã gọn, vậy nộp ở đâu?
Ở bài trước, Minh sửa xong trang GitHub và LinkedIn. Cùng với CV một trang và dự án sổ chi tiêu có người dùng thật, hồ sơ của Minh giờ kể cùng một câu chuyện ở cả ba nơi. Minh là nhân vật minh họa, ghép từ những tình huống quen thuộc của sinh viên IT mới ra trường. Các tin tuyển dụng, điểm số và kết quả trong bài cũng là minh họa do mình viết ra, không phải số liệu thị trường.
Lần trước, Minh gửi cùng một bản CV cho khoảng 30 tin tuyển dụng trong hai tuần và không nơi nào gọi lại. Giờ hồ sơ đã khác, nhưng nếu cách nộp vẫn như cũ thì kết quả khó khác nhiều. Bài này sửa cách nộp.
Nộp thật nhiều nơi thì có sao?
Minh kể với mình rằng lần trước Minh mở trang việc làm, gõ "React", rồi bấm nộp cho mọi tin hiện ra. Mỗi tin mất chừng hai phút. Nghe thì hiệu quả, vì 30 đơn chỉ tốn một giờ.
Mình hỏi Minh ba câu về 30 tin đó. Tin nào yêu cầu thứ Minh chưa từng làm? Công ty nào Minh thật sự muốn vào? Tin nào đã trả lời, dù là từ chối? Minh không trả lời được câu nào, vì Minh không đọc kỹ tin nào và cũng không ghi lại đã nộp ở đâu.
Cách nộp đó có ba cái giá. Người đọc hồ sơ nhận ra ngay một CV gửi hàng loạt, vì nó không nhắc tới thứ gì trong tin của họ. Minh nộp cả vào những tin không hợp, nên có được gọi thì cũng trượt hoặc không muốn đi. Và vì không ghi lại gì, Minh không học được gì từ 30 lần nộp đó: không biết loại tin nào hay trả lời, bản CV nào hiệu quả hơn.
Mình đề nghị Minh đổi cách tính. Thay vì đếm số đơn đã nộp, Minh đếm số đơn được sửa riêng cho đúng tin. Mỗi tuần năm đơn như vậy, mỗi đơn tốn chừng 30 tới 40 phút gồm cả đọc tin.
Một tin tuyển dụng gồm những phần nào?
Hầu hết các tin đều có bốn phần, dù tên gọi mỗi nơi một khác: mô tả công việc, yêu cầu, quyền lợi và cách ứng tuyển. Người mới thường đọc lướt phần đầu và dừng lâu ở phần yêu cầu, rồi nản vì không có đủ. Mình khuyên đọc theo thứ tự ngược lại một chút.
Phần mô tả công việc là phần đáng đọc kỹ nhất, vì nó nói bạn sẽ làm gì mỗi ngày. Một tin ghi "phát triển tính năng mới cho ứng dụng web của công ty" khác hẳn một tin ghi "bảo trì và sửa lỗi cho hệ thống của khách hàng", dù cả hai cùng tên vị trí là Frontend Developer.
Phần yêu cầu thường trộn hai loại vào nhau. Loại thứ nhất là bắt buộc, tức thiếu thì khó làm được việc ngay tuần đầu. Loại thứ hai là ưu tiên, thường đi sau các chữ "là lợi thế", "ưu tiên", "nice to have" hoặc "biết thêm". Nhiều bạn đọc cả hai loại như một danh sách phải có đủ, và bỏ qua những tin lẽ ra rất hợp.
Còn dòng "1 năm kinh nghiệm" thì sao? Với vị trí junior, theo mình dòng này thường mô tả mức độ công việc hơn là một điều kiện cứng. Người viết tin muốn một người đã từng tự làm ra thứ gì đó chạy được và làm việc được với Git, chứ không phải người mới học xong cú pháp. Một dự án có người dùng thật, có test và có README kể các quyết định kỹ thuật là bằng chứng cho đúng điều đó.
Mình không dám nói nơi nào cũng nghĩ vậy. Có công ty lọc cứng theo số năm, và bạn chỉ biết khi đã nộp. Nhưng tự loại mình trước thì chắc chắn không được gọi.
Đọc thử ba tin cùng Minh
Đây là ba tin mình viết ra để minh họa, dựa trên những kiểu tin Minh hay gặp. Mình giữ đúng giọng văn thường thấy trong tin tuyển dụng:
TIN A — Junior Frontend Developer (React) · công ty sản phẩm, 25 người · TP.HCM, 3 ngày ở văn phòng
Công việc: phát triển tính năng cho ứng dụng quản lý chi tiêu trên web; viết test cho phần mình làm;
tham gia review code cùng nhóm 4 frontend.
Yêu cầu: React, TypeScript, Git; hiểu REST API; 0–1 năm kinh nghiệm hoặc dự án cá nhân tương đương.
Ưu tiên: Next.js; đã viết unit test.
Quyền lợi: 10–14 triệu; có người hướng dẫn trong 2 tháng đầu; thử việc 2 tháng, 85% lương.
Ứng tuyển: gửi CV kèm link GitHub; 2 vòng (bài tập nhỏ làm ở nhà, rồi phỏng vấn kỹ thuật).
TIN B — Frontend Developer · công ty làm dự án cho khách hàng nước ngoài, 200 người · TP.HCM
Công việc: tham gia các dự án web cho khách hàng; làm việc theo yêu cầu của trưởng nhóm.
Yêu cầu: tối thiểu 1 năm kinh nghiệm React; Redux; HTML/CSS thành thạo; đọc hiểu tài liệu tiếng Anh.
Ưu tiên: biết Vue là lợi thế.
Quyền lợi: lương thỏa thuận; bảo hiểm đầy đủ; thử việc 2 tháng.
Ứng tuyển: nộp CV qua trang việc làm; phỏng vấn 2 vòng.
TIN C — Fullstack Developer (chấp nhận fresher) · công ty 8 người · Thủ Đức
Công việc: phát triển và vận hành toàn bộ website, app mobile và hệ thống quản trị của công ty.
Yêu cầu: React, Node.js, PHP/Laravel, React Native, Docker, AWS; biết Photoshop;
chịu được áp lực cao, sẵn sàng làm thêm giờ.
Quyền lợi: thử việc 3 tháng, hỗ trợ 3 triệu/tháng; lương chính thức trao đổi sau thử việc.
Ứng tuyển: nhắn tin qua Zalo.Với mỗi tin, Minh gạch chân những gì mình có bằng chứng. Mình nhấn mạnh chữ "bằng chứng": không phải thứ Minh từng nghe qua, mà là thứ Minh chỉ ra được trong một dự án.
Ở tin A, Minh có đủ cả bốn yêu cầu bắt buộc. React và TypeScript nằm trong app sổ chi tiêu, Git có trong lịch sử commit, REST API có trong đồ án tốt nghiệp. Minh có luôn cả hai mục ưu tiên, vì app viết bằng Next.js và có 21 test. Phần công việc còn nhắc tới "ứng dụng quản lý chi tiêu", gần như trùng với dự án của Minh.
Ở tin B, Minh có React, HTML/CSS và đọc được tài liệu tiếng Anh. Minh chưa dùng Redux, và chưa có một năm kinh nghiệm đi làm. Hai trong bốn yêu cầu bắt buộc còn thiếu, nhưng một trong hai là dòng số năm mà mình đã nói ở trên.
Ở tin C, Minh có React và một chút Node.js. Sáu thứ còn lại thì chưa. Nhưng lý do Minh nên dừng lại ở tin này không nằm ở danh sách công nghệ.
Chấm điểm một tin như thế nào?
Để Minh không phải quyết định bằng cảm giác, mình viết năm câu hỏi, mỗi câu 0, 1 hoặc 2 điểm, giống bảng chấm dự án ở bài dự án cá nhân cho junior developer.
Câu một hỏi bạn có bằng chứng cho bao nhiêu yêu cầu bắt buộc. Dưới một nửa là 0 điểm, từ một nửa trở lên là 1, gần đủ hoặc đủ là 2. Mình chỉ tính yêu cầu bắt buộc, vì mục ưu tiên không phải lý do để loại bạn.
Câu hai hỏi công việc hằng ngày có phải thứ bạn muốn làm trong một năm tới không. Không rõ làm gì là 0, làm được nhưng không hào hứng là 1, đúng thứ muốn làm là 2. Câu này dễ bị bỏ qua khi đang sốt ruột tìm việc, nhưng một năm đầu quyết định khá nhiều tới việc bạn giỏi lên theo hướng nào.
Câu ba hỏi ở đó có ai để học không. Tin không nhắc gì tới nhóm hay người hướng dẫn là 0, có nhóm cùng chuyên môn là 1, nói rõ có người hướng dẫn hoặc có review code là 2. Với junior, mình coi đây là câu quan trọng nhất. Làm một mình ở một công ty không có ai xem code của bạn thì rất khó biết mình đang sai ở đâu.
Câu bốn hỏi tin có rõ ràng không: có khoảng lương, có quy trình phỏng vấn, có địa điểm và hình thức làm việc. Thiếu gần hết là 0, có một phần là 1, đủ cả là 2. Một tin viết rõ ràng thường đến từ một nơi làm việc có tổ chức.
Câu năm hỏi bạn có thật sự đi làm ở đó được không, xét về quãng đường, giờ giấc và loại hợp đồng. Không được là 0, được nhưng vất vả là 1, thoải mái là 2.
Tổng là 10 điểm. Từ 7 trở lên thì nộp và dành thời gian sửa hồ sơ thật kỹ. Từ 4 tới 6 thì nộp nếu tuần đó còn chỗ. Dưới 4 thì bỏ qua.
Bảng này không phải tiêu chuẩn của công ty nào. Nó chỉ là cách mình biến những điều nên cân nhắc thành một danh sách có thể kiểm tra, và bạn hoàn toàn có thể đổi trọng số cho hợp với hoàn cảnh của mình.
Minh chấm ba tin như sau:
Câu hỏi Tin A Tin B Tin C
1. Bằng chứng cho yêu cầu 2 1 0
2. Việc hằng ngày 2 1 0
3. Có người để học 2 1 0
4. Tin rõ ràng 2 1 0
5. Đi làm được 2 2 1
Tổng 10 6 1Tin A được 10 điểm, và là tin Minh sẽ dành nhiều thời gian nhất. Tin B được 6. Minh mất điểm ở chỗ công việc mô tả khá chung chung và lương ghi "thỏa thuận", nhưng công ty 200 người gần như chắc chắn có nhóm để học, nên vẫn đáng nộp. Tin C được 1 điểm.
Dấu hiệu nào cho thấy nên bỏ qua một tin?
Tin C có vài dấu hiệu mà mình muốn bạn nhận ra, vì chúng lặp lại ở rất nhiều tin khác.
Dấu hiệu đầu tiên là danh sách công nghệ của ba vị trí dồn vào một người. Web, mobile, máy chủ, đồ họa và vận hành là công việc của cả một nhóm. Khi một tin "chấp nhận fresher" đòi tất cả, nhiều khả năng ở đó không có ai đi trước để hỏi, và bạn sẽ là người duy nhất chịu trách nhiệm cho mọi thứ.
Dấu hiệu thứ hai nằm ở dòng thử việc. Theo Điều 25 của Bộ luật Lao động 2019, thời gian thử việc với công việc cần trình độ từ cao đẳng trở lên là không quá 60 ngày. Theo Điều 26, lương thử việc ít nhất bằng 85% mức lương của công việc đó.
Tin C ghi thử việc 3 tháng với "hỗ trợ 3 triệu", còn lương chính thức thì "trao đổi sau". Khi chưa có mức lương chính thức, không ai tính được 85% của nó là bao nhiêu. Mình không phải luật sư, và mỗi trường hợp có thể có chi tiết riêng, nhưng một tin viết như vậy đủ để mình đặt câu hỏi trước khi bỏ thời gian.
Dấu hiệu thứ ba là "chịu được áp lực cao, sẵn sàng làm thêm giờ" nằm ngay trong phần yêu cầu. Công việc nào cũng có lúc gấp. Nhưng khi nó được viết thành điều kiện tuyển dụng, đó thường là mô tả của một ngày bình thường.
Còn vài dấu hiệu khác không có trong tin C mà bạn nên biết. Tin yêu cầu làm một bài test dài nhiều ngày trước cả vòng nói chuyện đầu tiên, nhất là khi đề bài giống hệt một tính năng thật của sản phẩm. Tin đòi đặt cọc, đóng phí đào tạo hoặc giữ bằng gốc. Tin không có tên công ty. Gặp những tin này, mình khuyên bỏ qua mà không cần chấm điểm.
Ngược lại, tin B ghi "lương thỏa thuận" thì mình không coi là dấu hiệu xấu. Rất nhiều công ty tử tế vẫn viết vậy. Nó chỉ khiến Minh mất một điểm ở câu bốn, và nhắc Minh chuẩn bị sẵn một khoảng lương mong muốn trước khi được hỏi.
Sửa hồ sơ cho từng tin trong 30 phút
Ở bài về 10 lỗi CV, mình khuyên giữ một bản CV gốc đầy đủ rồi tạo bản rút gọn cho từng nơi. Giờ là lúc làm việc đó. Với tin A, Minh sửa ba chỗ.
Chỗ thứ nhất là thứ tự. Tin A nhắc tới ứng dụng quản lý chi tiêu và viết test, nên dự án sổ chi tiêu lên đầu mục Dự án, và dòng mô tả nói tới 21 test ngay câu đầu. Đồ án tốt nghiệp xuống dưới.
Chỗ thứ hai là từ ngữ. Tin viết "REST API" và "unit test", nên CV của Minh dùng đúng hai cụm đó thay cho "gọi API" và "kiểm thử". Lý do không phải để đánh lừa ai. Người đọc hồ sơ đang cầm tin tuyển dụng trong đầu, và họ tìm đúng những chữ họ đã viết.
Chỗ thứ ba là vài dòng gửi kèm. Minh không viết thư xin việc dài một trang. Minh viết bốn câu, và câu nào cũng chỉ vào một thứ trong tin:
Chào anh/chị,
Em ứng tuyển vị trí Junior Frontend Developer (React). Em vừa làm xong một app ghi chi tiêu bằng
tin nhắn, viết bằng Next.js và TypeScript, có 21 unit test và đang có vài người dùng hằng ngày,
nên em đặc biệt chú ý tới tin này vì sản phẩm của công ty cũng là quản lý chi tiêu.
Bản chạy thử và mã nguồn ở dòng đầu CV; README có mục "Quyết định kỹ thuật" nếu anh/chị muốn xem cách em nghĩ.
Em có thể làm bài tập ở nhà trong tuần này và đi làm ở văn phòng 3 ngày mỗi tuần như tin mô tả.
Em cảm ơn anh/chị đã đọc.
MinhVới tin B, Minh làm khác. Tin đòi Redux mà Minh chưa dùng. Minh không viết Redux vào mục kỹ năng, vì chỉ cần một câu hỏi trong phỏng vấn là lộ. Thay vào đó, Minh thêm một dòng thật vào mô tả dự án: app sổ chi tiêu quản lý trạng thái bằng useReducer của React. Đó là thứ gần Redux nhất mà Minh thật sự làm, và nó cho người đọc thấy Minh hiểu ý tưởng đằng sau.
Mỗi lần sửa như vậy tốn của Minh chừng 30 phút. Minh lưu mỗi bản thành một file riêng, đặt tên theo công ty, để khi được gọi phỏng vấn thì biết mình đã gửi bản nào.
Theo dõi các đơn đã nộp bằng gì?
Minh không cần công cụ gì phức tạp. Một bảng tính với bảy cột là đủ, hoặc một file CSV như sau:
ngay_nop,cong_ty,vi_tri,diem,ban_cv,trang_thai,viec_tiep_theo
2026-11-12,Công ty A,Junior Frontend Developer (React),10,cv-cong-ty-a.pdf,đã nộp,hỏi lại ngày 2026-11-19 nếu chưa có tin
2026-11-12,Công ty B,Frontend Developer,6,cv-cong-ty-b.pdf,đã nộp,hỏi lại ngày 2026-11-19 nếu chưa có tin
2026-11-13,Công ty D,Junior Web Developer,7,cv-cong-ty-d.pdf,đã nộp,hỏi lại ngày 2026-11-20 nếu chưa có tinCột "việc tiếp theo" là cột quan trọng nhất, và cũng là cột mà lần trước Minh không có. Mỗi đơn luôn có một việc kế tiếp kèm ngày. Sau khoảng một tuần không có tin, Minh gửi một email ngắn để hỏi lại:
Tiêu đề: Hỏi về hồ sơ ứng tuyển Junior Frontend Developer (React) – Lê Văn Minh
Chào anh/chị,
Em đã gửi hồ sơ cho vị trí Junior Frontend Developer (React) ngày 12/11. Em viết để hỏi
hồ sơ của em đã tới đúng nơi chưa, và em có cần bổ sung gì không ạ.
Em cảm ơn anh/chị.
MinhMột email như vậy không làm phiền ai. Nó ngắn, có đủ thông tin để người nhận tìm lại hồ sơ, và không đòi hỏi gì. Minh chỉ hỏi lại một lần. Nếu vẫn không có tin, Minh đổi trạng thái thành "không phản hồi" và đi tiếp.
Sau vài tuần, bảng này trả lời được những câu mà 30 đơn lần trước không trả lời được. Tin từ 7 điểm trở lên có hay được gọi hơn không? Bản CV đưa dự án lên đầu có hiệu quả hơn không? Minh không cần đoán nữa.
Tìm tin tuyển dụng ở đâu?
Mình để phần này gần cuối vì nó ít quan trọng hơn bạn nghĩ. Nguồn nào cũng có tin tốt và tin tệ, và cách đọc ở trên dùng được cho tất cả.
Minh dùng bốn nguồn. Các trang việc làm chuyên về IT như ITviec hay TopDev có nhiều tin và lọc được theo công nghệ. LinkedIn thì hợp với hồ sơ Minh vừa sửa, và bạn có thể xem người đăng tin là ai. Trang tuyển dụng của chính các công ty Minh thích là nguồn hay bị quên, dù tin ở đó thường đầy đủ nhất. Nguồn cuối cùng là người quen: anh chị khóa trên, bạn cùng lớp đã đi làm, giảng viên hướng dẫn đồ án.
Về nguồn cuối, mình muốn nói thêm một câu. Nhờ giới thiệu không phải là đi cửa sau. Người giới thiệu chỉ giúp hồ sơ của bạn được một người thật đọc, còn phỏng vấn thì bạn vẫn tự làm. Khi nhờ, Minh gửi kèm link tin tuyển dụng, bản CV đã sửa cho tin đó và hai câu nói vì sao mình hợp, để người kia chỉ việc chuyển tiếp.
Hai tuần sau, một email mời phỏng vấn
Đây là phần minh họa cuối cùng của bài. Sau hai tuần, bảng của Minh có 10 dòng thay vì 30.
Ba nơi trả lời. Một nơi từ chối kèm một câu cảm ơn. Một nơi gửi bài tập làm ở nhà. Và công ty A mời Minh phỏng vấn kỹ thuật vào thứ Năm tuần sau.
Mười đơn được ba hồi âm không phải con số mình hứa với bạn, vì kết quả của mỗi người phụ thuộc vào thời điểm, thành phố và cả may mắn. Điều mình muốn bạn giữ lại là sự khác biệt giữa hai lần nộp. Lần này Minh biết mình đã nộp ở đâu, vì sao, bằng bản CV nào, và việc tiếp theo của từng đơn là gì.
Minh đọc email mời phỏng vấn ba lần, rồi nhắn cho mình: "Còn đúng một tuần. Em ôn gì trước?". Chuẩn bị cho buổi phỏng vấn đầu tiên khi thời gian có hạn là chủ đề của bài viết tiếp theo. Bạn theo dõi cả hành trình ở series Hành trình junior, và có thể xem trước các câu hay gặp trong ngân hàng câu hỏi phỏng vấn.