Nghề lập trình không hề màu hồng !

Dạo gần đây mình thấy rất vui và hứng khởi khi Blog của mình đang ngày càng được nhiều các anh em lập trình viên quan tâm nhiều hơn, trong đó có rất nhiều các bạn trẻ. Mình nhận được khá nhiều inbox của các bạn còn rất trẻ chỉ mới đang học cấp 3 hỏi rằng “Anh ơi em muốn theo nghề lập trình thì bây giờ em cần học gì hả ảnh ?”.  Ngày xưa hồi còn học cấp 3 thì ngoài việc học trên lớp mình chỉ biết đi đá bóng, chơi Play Station chứ cũng chả biết mình thích gì, muốn làm gì sau này. Mà hồi đó nhà mình cũng không có điều kiện, không có máy tính nên không có cơ hội bén duyên với lập trình sớm hơn.

Nếu như các em tự định hướng được từ lúc còn học cấp 3 và có chuẩn bị để đi theo con đường của mình thì quá là tốt, mình rất ủng hộ. Tuy nhiên vì tuổi trẻ thì hay phiêu, nhiều lúc thích thú nhất thời hoặc thích theo trào lưu, nhất là khi mấy năm gần đây ngành công nghệ thông tin, lập trình đang dần hot trở lại, nhu cầu nhân lực công nghệ thông tin ở Việt Nam tăng chóng mặt. Theo thống kê của TopDev thì dự đoán đến năm 2020 Việt Nam sẽ cần khoảng 400.000 nhận sự trong ngành IT và ước tính sẽ thiếu khoảng 100.000. Và để cho các bạn đang có ý định theo còn đường ngành IT có được cái nhìn đa chiều thì trong bài viết này mình sẽ chia sẻ một số mặt trái khá thú vị của nghề lập trình mà có thể các bạn chưa biết. Những điều mình sắp chia sẻ ngay sau đây dựa trên quan điểm và kinh nghiệm của cá nhân mình sau 8 năm làm việc trong nghề lập trình. Hy vọng nó sẽ giúp các bạn có cái nhìn đầy đủ hơn về nghề lập trình trước khi quyết định đi theo và gắn bó với nó.

Lập trình không hề là công việc “việc nhàn, lương cao”

Nhiều người không phải trong ngành nghĩ rằng nghề lập trình là “việc nhàn, lương cao”. Khi biết mình làm lập trình viên thì một số người thốt lên rằng “Ôi, làm lập trình lương cao lắm nhỉ”, “Tháng được 40 củ không cháu ?”,… bla bla. Tuy nhiên sự thật thì không phải như vậy.

Nói về lương, theo quan điểm của cá nhân mình thì lương của lập trình viên Việt Nam không cao (đang nói trung bình, lương của những người giỏi xuất chúng thì đương nhiên là rất cao). Mình xin trích thông tin từ techtalk.vn như sau, các bạn hãy tự đánh giá xem có cao không nhé.

  • Đối với các lập trình viên mới ra trường & junior level, mức lương khoảng 5-8 triệu/tháng.
  • Đối với các lập trình viên có kinh nghiệm, senior level từ 3-5 năm thì mức lương trung bình khoảng 15-20 triệu/tháng.
  • Đối với các lập trình viên có kim nghiệm lâu từ 5-7 năm, trung bình khoảng 20-30 triệu/tháng.
  • Trên 7 năm, con số này dao động khá nhiều, và tuỳ vào tố chất và năng lực phát triển các hướng lâu dài của mỗi lập trình viên (thống kê qua Vietnamworks năm 2017)

Nói về việc thì không dám “nhàn” đâu ạ. Người ta cứ nghĩ làm lập trình viên ngồi phòng điêù hoà, mưa không tới mặt, nắng chẳng tới đầu, sưỡng vãi ra. Ừ thì tất nhiên là sướng thật, còn gì sướng hơn ngồi đắm chìm vào những dòng code, những thuật toán bên những tách cafe phiêu bồng. Còn gì sướng hơn cảm giác như mình là một siêu anh hùng trong bộ phim Avengers khi vừa fix được bug khó, một vấn đề hóc búa, cảm giác đó thật tuyệt vời. Nếu bạn đang phê khi nghe mình kể đến đây thì xin phép tát một cái vào mặt cho bạn tỉnh lại nhé, vì cuộc đời đâu phải lúc nào cũng nở hoa như vậy, mình xin khẳng định làm lập trình viên (từ giở trở đi xin viêt tắt là LTV) khổ lắm, bởi vì:

  • Ngồi nhiều sinh bách bệnh: Phần lớn thời gian của LTV là ngồi và cắm mặt vào màn hình máy tính và rất nhiều bệnh tật cũng theo đó mà ra. Đang code dở, đang debug dở, đang máu nên buồn đái cũng không chịu đi, đến lúc buồn quá sắp phọt ra quần rồi mới chịu nhấc mông đi (lúc đi còn lẩm bẩm “đậu xanh rau má, giá có cái bỉm ở đây mặc vào ngồi code đỡ phải đi đái thì ngon”). Từ đó sinh bệnh sỏi thận, trĩ, táo bón và thoát vị đĩa đệm. Bản thân mình đã nếm trải chứng thoát vị đĩa đệm khi đang công tác bên Nhật Bản. Quả thật là đau dã man, kinh khủng, đau rớt hết nước mắt, sau đó phải đi viện và nghỉ mất gần tháng mới có thể hồi phục 90%.
  • Thường mắc các bệnh tiêu hoá: Do đặc thù công việc nên anh em LTV chúng tôi thường xuyên thức khuya để làm việc, học tập, xem PornHub … à nhầm GitHub (vì lúc đó tập trung nhất). Ngoài ra dân coder thường ăn uống không điều độ, lạm dụng cafe. Mà các bạn biết rồi đấy, tất cả những thói hư tật xấu đó ảnh hưởng rất xấu đến sức khoẻ, đặc biệt là hệ tiêu hoá.
  • Thường xuyên trong tình trạng stress: Các LTV và nhất là LTV làm các dự án outsourcing như mình thì luôn chịu rất nhiều áp lực. Ngoài áp lực về cơm áo gạo tiền (nhất là những anh em đã có gia đình) thì còn áp lực phải hoàn thành công việc đúng hạn, áp lực gánh team (nếu bạn đã là một senior developer), áp lực vì suốt ngày bị khách hàng ý kiến ý cò, thậm chí là chửi sấp mặt (tất nhiên là họ có lý do chính đáng để chửi).

  • Dễ bị tẩu hoả nhập ma: Không biết các đồng nghiệp khác thế nào chứ mình rất hay bị mất ngủ, nhất là những giai đoạn mình làm việc gì đó với sự tập trung cao độ. Chẳng hạn như phải suy nghĩ đưa ra giải pháp (solution), thiết kế (design) hoặc thuật toán (algorithm) cho một bài toán nào đó. Những lúc đó đầu óc mình thường tập trung rất cao độ dẫn đến tẩu hoả nhập ma,  ám ảnh cả trong bữa ăn giấc ngủ, rất khó ngủ hoặc có ngủ thì cũng mơ mơ tỉnh tỉnh, trong đầu toàn UML diagram hoặc thuật toán bay nhảy. Chỉ đến khi nào công việc hoàn thành thì đầu óc mới dần dần cân bằng trở lại. Một anh bạn thân của mình đã từng là một lập trình viên rất giỏi nhưng vì quá mệt mỏi về đầu óc đã bỏ nghề.

Môi trường làm việc thiếu cân bằng nam nữ

Trong ngành lập trình này thì các bạn phải xác định là chủ yếu là toàn đực rựa với nhau. Hiện nay chỉ có rất ít nữ giới làm LTV, nếu có thì các bạn biết đấy, con gái mà làm kỹ thuật thì đa số là nó sao sao ý, nói chung là … à mà thôi chắc anh em cũng hiểu ý mình rồi nhỉ. 

Tất nhiên một số bộ phận như Tester, Admin thì đa phần là là gái nhưng mà không ăn thua vì số lượng ít ỏi, cung không đủ cầu. Chính vì vậy bạn nào quyết theo ngành này thì một là kiếm gấu trước, hai là khỏi cần gấu cho rảnh tay phát triển nghề nghiệp, cày cuốc kiếm nhiều tiền, lúc đó muốn gì chả có.

Không có nhiều thời gian cho gia đình

Đặc thù nghề LTV (ít nhất là với dân làm outsourcing ở Việt Nam) thường xuyên phải OT (Over Time – làm thêm giờ) hoặc ON (Over Night – Làm xuyên màn đêm) để chạy cho kịp tiến độ dự án, bàn giao sản phẩm cho khách hàng đúng hẹn. Thời gian OT, ON có khi là vài ngày thậm chí vài tuần, vài tháng liên tục. Vào thời gian đó chúng tôi hầu như ở công ty nhiều hơn ở nhà, không có thời gian chăm lo cho “gấu”, cho vợ con, cho gia đình. Sau mỗi lần như vậy tinh thần đã mệt mỏi, thể xác bị bào mòn thì chớ lại còn nào là “gấu” giận, vợ dỗi vì không quan tâm, thời gian ở công ty nhiều hơn ở nhà. OT, ON quả là nỗi ác mộng thực sự với mọi LTV.

Rồi có những lúc đi chơi với “gấu”, đi ăn với vợ, chơi cùng con nhưng mặt ngáo ngơ như thằng phê má tuý đá. Tất cả cũng chỉ vì trước lúc ở công ty về thì code méo chạy nên giờ trong đầu chỉ có một điều quan tâm duy nhất : “Đm, tại sao code mình dell chạy ?”, còn tâm trí đâu mà ăn uống, chơi bời nữa.

Kiến thức nhanh lạc hậu

Các kiến thức, công nghệ trong ngành IT rất nhanh lạc hậu, vì vậy trong ngành này không tiến là lùi, đứng yên là bị lạc hậu và sẽ bị đào thải. Ngành lập trình chúng tôi làm theo dự án, hết dự án này đến dự án khác, với outsourcing thì dự án sau có thể chả liên quan gì đến dự án trước. Mỗi khi bắt đầu dự án mới, các LTV luôn luôn phải học tập những kiến thức mới, công nghệ mới, thậm chí là ngôn ngữ mới. Và việc học ở đây chủ yếu tự học chứ không có thầy dạy như hồi đi học, phải học từ khách hàng, học từ internet, học từ các bậc đàn anh, những người có kinh nghiệm trong nghề.

Nếu đọc đến đây các bạn vẫn thực sự thích ngành này thì hãy trang bị cho mình khả năng để có thể tự học. Mình từng nghe chém ở đâu đó là 80% kiến thức của nhân loại viết bằng tiếng Anh, bởi vì tiếng Anh là ngôn ngữ có vốn từ vựng về kỹ thuật phong phú nhất, việc dịch các tài liệu kỹ thuật từ tiếng Anh sang các ngôn ngữ khác thường không thể truyền tải hết nội dung và hay mắc sai sót. Vì vậy, để tự học được thì các bạn hãy trau dồi khả năng tiếng Anh của mình, nhất là kỹ năng đọc nhé. 

Lập trình không phải nghề có thể làm lâu dài

Nhiều lập trình viên bắt đầu đặt câu hỏi về ý nghĩa của cuộc sống và lựa chọn nghề nghiệp của họ khi họ đến tầm tuổi 30, 35 hoặc nhiều hơn. Điều đó bởi vì lập trình chủ yếu là sân chơi cho những người trẻ tuổi.

Không ngạc nhiên khi các công ty phần mềm thích thuê người mới ra trường. Họ phái nhà tuyển dụng của họ đến các trường đại học hàng đầu để săn tìm nhân viên tương lai cho công ty của họ. Đặc điểm của người trẻ là họ có sự máu lửa, nhiệt huyết, thậm chí có những gã có thể code nhiều ngày liền mà không cần ăn (hoặc chỉ ăn mì gói), không cần ngủ, thật kinh khủng. Điều này có nghĩa là sự nghiệp của một lập trình viên tương đối ngắn. Khi bạn còn trẻ (tầm dưới 25 tuổi), bạn có sức khoẻ, có máu lửa, có thời gian (phần lớn chưa lập gia đình hoặc chưa có con) nên bạn tập trung cho công việc, bạn có nhiều thời gian để học tập, cày bừa vô độ, cống hiến hết mình để toả sáng. Nhưng theo thời gian sức khoẻ bạn đi xuống, bạn có gia đình, có con, bạn có trách nhiệm phải lo cho gia đình. Nếu như trước kia bạn làm không cần để ý thời gian thì bây giờ bạn có nhiều mối quan tâm khác ngoài công việc, bạn phải về với gia đình vì ở đó có nhiều việc cần đến bạn. Nếu khi còn trẻ bạn có thể dùng cả buổi tối để nghiên cứu về một công nghệ gì đó, đọc blog về lập trình hoặc ngồi code cho dự án riêng của mình thì bây giờ điều đó là quá xa xỉ.

Dó đó, nếu đến tuổi 30, 35 bạn vẫn chưa chuyển sang làm quản lý mà vẫn đang làm kỹ thuật (giống như mình, vì mình chỉ thích code, không thích quản lý con người) thì bạn sẽ phải nghĩ dần về việc kiếm một cộng việc khác đi là vừa. 

Lời kết

Trên đây là những chia sẻ của mình về mặt trái của nghề lập trình mà chỉ những người trong cuộc mới cảm nhận rõ nhất. Hy vọng các anh em trẻ sau khi đọc xong bài này sẽ xoá bỏ được những lầm tưởng về nghề lập trình viên, những bạn nào vẫn đam mê thì hãy nuôi dưỡng và chuẩn bị hành trang thật tốt cho tương lai. Chúc các em sẽ trở thành những lập trình viên giỏi trong tương lai. Mình sẽ viết bài chia sẻ một số lời khuyên hữu ích cho các bạn trẻ mới vào nghề vào một bài viết khác trong tương lai gần.

— Phạm Minh Tuấn (Shun) —