Các bạn sinh viên còn đang học hoặc mới ra trường sẽ khó hình dung được về những vị trí, chức danh trong ngành lập trình. Mình viết bài này nhằm giải đáp một số thắc mắc các bạn thường hỏi như:
- Mới đi làm em có chức danh gì, công việc thế nào.
- Code lâu thì lên được chức gì, lương cao không?
- Em thích code thôi, không thích làm trưởng nhóm, em nên định hướng thế nào.
Hiểu rõ con đường nghề nghiệp của ngành developer, các bạn sẽ dễ định hình phát triển tương lai của bản thân, cũng như dồn sức vào con đường mình đã chọn.
Mình chỉ liệt kê con đường nghề nghiệp của 1 developer, vì bản thân mình cũng là developer. Con đường của 1 tester (QA engineer) cũng có 1 số chức danh tương tự, nhưng lên cao sẽ khác. Các chức vụ sẽ được mình miêu tả theo thứ tự từ thấp lên cao nhé.
Fresher/Junior Developer
Các bạn sinh viên đi thực tập hoặc mới ra trường thường được chức danh này. Số năm kinh nghiệm của Junior Developer thường vào khoảng 6 tháng – 1 năm. Mức lương thì tùy vào khả năng của bạn, thường là từ 300-500$.
Do chưa có kinh nghiệm, fresher/junior thường được các công ty đào tạo lại, do đó khi phỏng vấn fresher các công ty thường chỉ xét khả năng suy nghĩ logic, khả năng lập trình, tiềm năng lập trình của bạn. Cá nhân mình thấy chương trình đào tạo Fresher của FSOFT cũng khá tốt, có dạy nhiều thứ mà bạn sẽ tiếp xúc khi làm việc (mặc dù lương fresher hơi thấp).
Do chưa có kinh nghiệm, mọi người thường không đòi hỏi ở bạn quá cao. Công việc của 1 junior thường là tìm hiểu project hiện tại, code các module nhỏ, đơn giản, fix bugs, có thể có sự trợ giúp/review của senior. Ở giai đoạn junior, các bạn hãy cố gắng tranh thủ học code, học cách thức làm việc, học hỏi kinh nghiệm của các bác senior đi trước.
Developer
Code được 1 thời gian, khoảng 1-3 năm, các bạn sẽ được gọi là Developer (Nhiều bác lên thẳng Team Leader hoặc Senior, tùy công ty). Ở giai đoạn này, bạn đã làm qua một số project, khá rành về 1 số công nghệ. Mức lương của developer vào khoảng 600-900$ tùy vào công ty.
Màn phỏng vấn cho developer thường khó hơn. Người phỏng vấn sẽ hỏi bạn về những project đã làm, các khó khăn bạn đã gặp phải, cách giải quyết? Ngoài ra, buổi phỏng vấn sẽ tập trung vào những công nghệ bạn đã ghi trong CV. Vì developer đã có kinh nghiệm, các bạn sẽ không còn “được” các anh senior kèm cặp, và cũng khó mà lấy danh nghĩa junior để hỏi, nhờ vả hay mắc lỗi nữa.
Ở giai đoạn này, bạn đã được code một số module phức tạp hơn, tham gia meeting, code review, thảo luận với khách hàng v…v. Đây là giai đoạn để bạn dồn nén kiến thức, kinh nghiệm, gây dựng danh tiếng để lên nấc tiếp theo trong bậc thang nghề nghiệp.
Lý thuyết là vậy nhưng thực tế, thuở làm FSOFT mình ăn lương junior mà làm công việc của developer, việc khó lâu lâu cũng đùn mình luôn, nhờ vậy mình học hỏi cũng được khá nhiều.
Quản lý hay kĩ thuật?
Ở giai đoạn sau, bạn đã có thể xác định con đường cho mình. Nếu muốn tập trung vào code và kĩ thuật, bạn có thể đi theo hướng technical: Senior Developer => Technical Lead => Software Architecture. Nếu muốn làm việc với quy trình và con người, bạn nên đi theo hướng quản lý: Team Lead => Project Manager => Manager. Ở giai đoạn đầu, lằn ranh giữa 2 con đường này khá mờ nhạt, nhưng càng lên cao lại càng trở nên rõ ràng. Các bạn có thể xem bảng tóm tắt sau:
Hướng quản lý (Management)![]() |
Hướng kĩ thuật (Technical)![]() |
Team Leader Bạn trở thành leader của 1 team nho nhỏ, khoảng 3-6 thành viên. Ngoại trừ code ra, bạn còn phải họp hành với cấp trên, báo cáo với khách hàng, quản lý cấp dưới. Ở giai đoạn này, bạn sẽ dần học thêm 1 số kĩ năng lãnh đạo, kĩ năng quản lý v…v. Ở 1 số cty nhỏ, developer lâu năm, có kinh nghiệm sẽ lên team leader. Bạn vẫn còn khá nhiều thời gian code, code giỏi có thể sẽ làm thành viên trong team tôn trọng hơn. Mức lương cho team lead thường khoảng 1000-1500$ |
Senior Developer Sau một thời gian làm việc, bạn nắm vững, hiểu sâu và rộng nhiều công nghệ + qui trình. Ở vị trí này, ngoại trừ khả năng code “thần thánh”, bạn còn phải biết đưa ra design và solution. Ngoài ra, bạn còn phải hướng dẫn chỉ bảo các em junior mới vào, cũng như tham gia code review v…v. Đôi khi senior dev cũng kiêm luôn vị trí team leader, do đó bạn cũng cần một chút kĩ năng diễn đạt và lãnh đạo. Mức lương cho Senior Developer cũng khoảng 1000-1500$(hoặc hơn) |
Project Manager Lên đến vị trí này, bạn sẽ có rất ít hoặc hầu như không có thời gian code. Đa phần thời gian của bạn dùng để đọc báo, lướt voz, lướt webtretho …. Đùa đấy, công việc chính của bạn bây giờ là báo cáo, quản lý, lãnh đạo, lâu lâu bạn còn bị bắt đi phỏng vấn 1 số ứng viên để tuyển thành viên cho dự án nữa. Bạn là người quyết định sự thành bại của 1 dự án, do đó nếu dự án thành công bạn sẽ được thưởng 1 khoản bonus kha khá, tùy cty. Mức lương cho PM vào khoảng 1000-2000$ |
Technical Lead Bạn cần hiểu biết về công nghệ sâu và rộng, vì chính bạn là người lựa chọn công nghệ, qui trình… cho 1 dự án. Những quyết định lớn về thiết kế, cấu trúc code … sẽ do bạn chịu trách nhiệm. Ở giai đoạn này, ngoài việc technical “cứng”, bạn còn phải giỏi thuyết trình, hướng dẫn, giải thích… Vì sao á? Lead đưa ra vấn đề thì phải giải thích hợp lý, thành viên khác nó mới hiểu, nể và làm theo chứ. Mức lương cho vị trí này vào khoảng 1500-2500$. |
Manager/Director Chúc mừng, ở vị trí này bạn đã được gọi là sếp, cấp trên, lãnh đạo, … Lúc này bạn sẽ không có thời gian mà code, suốt ngày họp hành, giao việc, phỏng vấn, trao đổi với các bộ phận, phòng ban, xử lý việc hành chính… Mình không có thông tin về mức lương, thưởng v…v của vị trí này. |
Software Architect Muốn đạt chức danh này, ít nhất bạn phải có 10-20 năm trong ngành. (Nhìn thằng nào mặt mũi trẻ măng mà vỗ ngực tự xưng SA thì đừng tin). Công việc của bạn khá gian khổ: Từ một yêu cầu “mơ hồ” của khách hàng, bạn phải làm việc với BA để đánh giá solution, làm việc với PM để xây dựng 1 team, làm việc với Technical Lead để thiết kế, đưa ra các quyết định quan trọng về kiến trúc.Vị trí này mặc dù không có quyền quản lý, nhưng lại có khá nhiều quyền lực ngầm. Mức lương cũng ngang ngửa hoặc cao hơn cả manager. |
Ngoài những con đường trên, các bạn có thể đi theo hướng Sales, Kĩ sư cầu nối (BrSE), Business Analyst (Bên itviec có 1 bài viết khá hay về BA ở đây: http://blog.itviec.com/2015/03/business-analyst/). Trong phạm vi bài viết, mình không cover hết được toàn bộ những bước phát triển trong ngành này, mong nhận được sự bổ sung, góp ý của các bạn.
30s quảng cáo
Đây là một bài viết được trích dẫn từ cuốn sách “Code dạo kí sự – Lập trình viên đâu phải chỉ biết code” do mình viết. Quyển sách bao gồm những kĩ năng từ mềm đến cứng mà mỗi developer phải có, đảm bảo sẽ rất có ích cho các bạn sinh viên hoặc lập trình viên đã đi làm. Các bạn xem thông tin và đặt mua sách tại đây nhé: Sách Code Dạo Ký Sự.
Bonus: Các bạn có thể tham khảo thêm về mức lương và cơ hội việc làm của các vị trí tại đây nhé.
- Senior Developer: https://itviec.com/jobs/senior-developer-ap
- Team Leader: https://itviec.com/jobs/team-leader-ap
- Project Manager: https://itviec.com/jobs/project-manager-ap
- Technical Lead: https://itviec.com/jobs/technical-lead-ap
- Software Architect: https://itviec.com/jobs/software-architect-ap
- Manager: https://itviec.com/jobs/manager
bên mình SA mới có 30 tuổi nè.
LikeLiked by 2 people
Chắc thánh đó bạn, đợt đó mình đọc báo cũng thấy FSOFT có thằng PM 21 tuổi 😀
LikeLike
Bên Fsoft có PM 23 tuổi, SA thì 25 tuổi. Người thật việc thật hẳn hoi.
LikeLike
mình đang thuộc diện mới ra trường,đang muốn xin việc hi vọng được bạn chỉ bảo góp ý đôi chút.nếu có thể thì giới thiệu cho mình ă công việc nhé.
LikeLike
anh cho em hỏi em năm nay đang học năm 4 ở bách khoa thấy rất nhiều người đi trước bảo học cntt phải đi ra ngoài làm việc thì sau này đi xin việc mới làm dc việc !! hiện h em vẫn chưa đi làm ở đâu cả em thấy kiến thức mình thua kém các bạn rất nhiều đặc biệt là việc biết thêm nhiều thứ mới !! nhưng thực sự em học các môn ở trên trường em học vẫn rất tốt khả năng tư duy thuật toán giải quyết vấn đề khi làm project ở trường cũng tạm ổn và thấy nhiều đứa bạn đi làm ở bên ngoài nó biết nhiều hơn em nhưng kiến thức cơ bản trong trường nó ko chắc bằng em thậm chí em toàn cân project cho nhóm mình !!! em có quan điểm muốn học chắc những cái cơ bản và tư duy tốt đã ra trường đi làm sau !! thời sinh viên sẽ chỉ học và làm điều mình thích thôi !! nếu em ko đi làm sớm thì có đáng lo ko anh tại em nghe nói yêu cầu của các doanh nghiệp cũng cao nên em sợ nhiều cái em ko biết sau này xin việc khó !!!
LikeLike
Bạn thích tập trungg học thời còn SV thì cứ học thôi, dù sao mới đi làm thì công ty họ cũng đào tạo lại cả. Đi làm sớm thì ra trường dễ xin việc hơn, lên chức lên lương sớm hơn thôi 😀
LikeLiked by 3 people
Ngẫm cũng đúng, hướng technical và hướng quản lý ban đầu nó mơ hồ chả biết mình đang ở đâu, nghiêng về bên nào. Tự xách đít, xách laptop đi họp với khách hàng, tự mình giao cho bản thân mấy module khó ( mấy module dễ “bị giành” hết :(( ). Lâu lâu cứ tự nghĩ mình giống thằng lính phường, nhận lệnh cấp trên rồi tiên phong đi đầu trong chiến dịch vậy :))
LikeLiked by 1 person
mình 28t gần 29t, từng học qua căn bản C++, nhưng học và làm trong nganh du lịch, giờ có hứng thú về code, đi học có muộn ko nhỉ
LikeLiked by 1 person
Thích thì cứ nhích thôi bạn ơi ;).
LikeLike
Thế rủi ro quá thớt. Chắc nên đi học và làm part-time buổi tối và cuối tuần về code trước. Sau đó cảm thấy OK thì chuyển hẳn.
LikeLike
Mình thấy rất nhiều bạn còn trẻ tuổi mà sự nghiệp đã rất vững rồi
LikeLike
Bài viết hay quá. Liked!
LikeLike
Cám ơn tác giả nhiều, bài viết rất hay
LikeLike
ad ơi! em thật sự rất lo, em học cd thôi, nhưng e học cũng khá ổn (tạm), e muốn kiếm 1 chỗ làm thêm bên Android nhưng không biết có chỗ nào nhận không ạ
LikeLike
Em lên mấy group lập trình với lại mấy trang như itviec để tìm việc nhé ;).
LikeLike
MeetDev.com cũng có quá trời việc 😛
LikeLike
Cảm ơn anh Hoàng nhé. Bài viết rất bổ ích.
LikeLike
một con đường dài
LikeLike
e đang bắt đầu với junior :3
LikeLike
Cần lắm 1 blog như thế này cho dân BA như mình
LikeLike
Bạn tự viết cho các đàn em sau đi, hâh.
LikeLike
Anh ơi anh có thể viết bài về Kỹ sư cầu nối (BrSE) không ạ? hướng này e thấy giờ các công ty Nhật tuyển khá nhiều.
LikeLike
Em tìm blog của anh Tiger Nguyễn nhé 😉
LikeLike
Chào các bạn, nếu deal lương fresher ở VN tầm 9tr thì có xem là cao với mặt bằng chung không nhỉ? 😀
LikeLike
Fresher mà tầm đó thì mình nghĩ là cao đấy, bởi thường công ty sẽ phải đào tạo lại bạn. Theo như mình biết thì FSOFT deal fresher là 6tr, sau 2 tháng phỏng vấn để deal lại lương junior.
LikeLike
“Bu lờ” còn sinh năm 92 nói gì tới PM, SA ^^!
LikeLike
Em chào anh, em đang có 1 thắc mắc là làm cách nào để tìm được những jobs của các công ty nước ngoài tại Việt Nam vì tiếng Anh của em cũng khá tốt nên em muốn tận dụng điều đó 😀
LikeLike
Cứ lên mấy trang như itviec, vietnamwork mà tìm thôi e 😉
LikeLike
Em cứ thấy 1 điều là hầu như những bài viết đều tổng hợp từ FSOFT.
Phải có anh chị nào đang làm ở FSOFT ạ?
Bản thân em cũng đang thực tập tại FSOFT được 6 ngày rồi ạ!!
LikeLike
Bạn nói làm Junior mà phải làm cả việc của dev vậy có quá sức ko. Có khi nào bạn cho rằng cty đang bóc lột sức lao động ko
LikeLike
Mới đi làm thì cứ để người ta bóc lột đi bạn.
Vậy trình mới nhanh lên
LikeLike
Em là sinh viên năm cuối và hiện tại đã làm 1 vài nơi rồi. Do base của em chưa pro nên việc vừa học vừa làm thì khả năng lên exp của em k nhiều..A có thể suggest cho em 1 vài solution đc k ạ? Em đã đi làm đc hơn 1 năm rồi!
LikeLike
Lên mạng đọc nhiều, làm chung với mấy người giỏi thì học được nhiều thôi em 😀
LikeLike
Theo anh!Vừa học vừa làm k lên skill nhah đc.. có nên dừng làm để ra trường rồi đi làm đc k? Và ở nhà tự cày ạ
LikeLike
Tự cày thì không lên trình nhiều đâu em. Em ráng vào các cty lớn như nhaccuatui, vinagames, zalo hoặc vào các cty startup xem sao nhé.
LikeLike
Hiện tại em đang làm cty startup. A hay livestream vào hôm nào ạ?
LikeLike
Các mức lương này có update theo từng năm không a Hoàng ?
Nếu có thì mức giao động qua mỗi năm là bao nhiêu % ạ 😀
LikeLike
Hên xui em nhé, chắc mỗi năm lạm phát cỡ 3-5% =))
LikeLike
Mình thấy bài này sát với thị trường lao động hiện nay 🙂 . Cũng đang tìm cách nâng cao tay nghề để sự nghiệp sáng lạng hơn , mình chỉ mới là Junior
LikeLike
Anh ơi chuyện là em đang học Python và có ý định theo ngành bảo mật thông tin ấy ạ. Cho em hỏi em nên học về những gì ạ? Và trong quá trình tìm hiểu em thấy có 2 nghề khác nhau là kỹ sư an ninh mạng và chuyên gia quản lý bảo mật, vậy 2 nghề này khác nhau như thế nào ạ? Em xin cảm ơn.
LikeLike
hâm mộ Hoàng quá. mình bằng tuổi bạn thôi nhưng bây giờ mới bắt đầu tìm hiểu về ngành lập trình này 🙂 đọc blog thấy động lực ghê
LikeLike