Suýt Thì Tư Duy Sai Lầm Này Kìm Hãm Sự Nghiệp Dev Của Mình

Thời gian đọc: 7 phút
mục lục

Tết là lúc nói về kế hoạch cho năm mới. Vì vậy, không gì thích hợp hơn là cùng nhau bàn về việc chúng ta có thể làm gì để cải thiện sự nghiệp dev của mình trong năm tới.

Có một điều mình để ý thấy trong cộng đồng dev, có một số người lan truyền tư duy kiểu như này:

“Chỉ Cần Technical Skills Thật Giỏi Là Được.”

  • Biết nhiều, biết sâu về công nghệ thì lương phải 2k-3k USD mới xứng đáng.
  • Không nắm hết được kiến thức thì không thể nào tìm việc được.
  • Phải dành thời gian ôn luyện thật nhiều thì mới đi tìm việc.

Nhìn chung, tư duy này không hẳn là sai, nhưng nó cũng không phải là đúng. Nếu đánh đồng: technical giỏi = lập trình viên giỏi thì QUÁ SAI.

Mình cũng từng nghĩ như vậy nên mình hiểu được lối tư duy này. Nhưng cũng chính vì vậy mà chút nữa mình đã tự bó hẹp sự nghiệp dev của mình, may mà tỉnh ngộ kịp thời.

Tại Sao Chúng Ta Lại Tin Vào Tư Duy Này?

Một là cảm giác sướng khi học được cái mới và còn sướng hơn nữa khi áp dụng được nó vào dự án thực tế.

Hồi mới chập chững code những dự án đầu tiên, mình mê code kinh khủng. Tự dưng chỉ bằng mấy dòng code mà giải quyết được bao nhiêu vấn đề client đưa ra, mê lắm chứ, cảm thấy tự hào vô cùng, thành ra lại càng muốn học thêm nhiều công nghệ hơn.

Hai là ở giai đoạn này kĩ năng kỹ thuật của chúng ta còn yếu, nên chúng ta luôn luôn có suy nghĩ cần phải học thêm nhiều hơn.

Nói thật là ở cái nghề này, học có bao giờ là thừa, kiến thức lúc nào cũng vô vàn (và yêu cầu của sản phẩm cũng vậy). Mình vẫn nhớ mãi một ngày nào đó của năm 2017, mình học xong một thành phần khá phức tạp của Android, mặt mũi sáng bừng mình vội vàng đem ốp vào dự án, để rồi ngày hôm sau được anh đồng nghiệp chỉ cho một kĩ thuật khác xử lí được vấn đề này phút mốt mà đơn giản hơn nhiều. Lúc đó chỉ nghĩ rằng mình cần phải học thật nhiều hơn nữa thì mới bước lên vị trí như của tiền bối.

Ba là chúng ta còn chưa hiểu rõ về sự nghiệp dev, nên chúng ta cứ nghĩ rằng chỉ cần giỏi kỹ thuật là được rồi.

Bốn là chúng ta sợ học kĩ năng mới, sợ giao tiếp, sợ thay đổi. Việc chỉ tập trung vào kỹ thuật đem lại cảm giác thoải mái, an toàn hơn.

Nhưng Nghĩ Vậy Thì Có Gì Sai?

Tôi biết ông anh sinh năm 96 học Cơ khí Bách Khoa ngày đêm cày cuốc, level technical lên cao ngất, luôn được các Big Tech săn đón, sếp yêu đồng nghiệp quý, lương $500k/năm. Hơn nữa, trong các bộ phim, tôi thấy mấy ông nerd trông ngầu lòi, chắc lương cũng siêu cao khổng lồ.

Những câu chuyện này thực sự hấp dẫn, nhưng rất tiếc, chúng chỉ là một dạng truyền thuyết đô thị thôi, đừng vì thế mà mơ mộng nữa.

Có quá nhiều lý do để phá vỡ giấc mơ đẹp này:

  • Nếu bạn thực sự vào làm trong Big Tech, bạn sẽ không bao giờ tin vào những câu chuyện vớ vẩn này nữa (à nhưng nếu bạn tin vào chuyện này, thực ra bạn sẽ không bao giờ thi được vào Big Tech).

  • Nerd cũng ngầu đấy, nhưng nerd không đồng nghĩa với thông minh. Quá say mê một điều gì đó không có nghĩa là bạn có thể vận dụng nó một cách hiệu quả. Rất nhiều người có thể đưa ra các giải pháp tốt hơn nerd nhiều.

  • Trong một công ty nhỏ, cộng đồng nhỏ, technical skills của bạn có thể gần như là độc nhất, khó tìm được ai giỏi hơn bạn, lương của bạn có thể chạm tới mức nào đó khá ổn so với những người xung quanh.

    Nhưng đó sẽ là “cái giếng” của bạn, không thể nào lớn lên được nữa. Bạn sẽ ổn nếu công ty không có gì thay đổi, môi trường đó không có gì thay đổi và nếu bạn chắc chắn sẽ làm ở đó cho tới khi nghỉ hưu. Nhưng ở đời đâu ai nói trước được điều gì? Một khi bị buộc ra khỏi giếng, bạn sẽ thấy choáng ngợp và toàn bộ lợi thế của bạn sẽ biến mất.

  • Trong một cộng đồng lớn hơn, có rất nhiều người giỏi technical hơn bạn, kĩ năng của bạn không phải là độc nhất. Khi phải cạnh tranh với những người có kĩ năng technical tương đương nhau, thì những kĩ năng khác sẽ được xem xét đến để lọc ra ứng viên phù hợp. Bạn sẽ thấy mình không còn lợi thế gì nữa.

Còn một lý do quan trọng nữa này. Mình đã nói chuyện với nhiều bạn bè và các ông anh làm ở FAANG, ở tập đoàn công nghệ lớn của Việt Nam, và ngay cả các công ty nhỏ, thì đều đúc kết ra nguyên tắc này:

Trừ khi bạn không muốn thăng tiến trong sự nghiệp, còn nếu không bạn chắc chắn phải luyện được những kĩ năng khác ngoài technical skills, bởi vì ngay cả con đường thuần kỹ thuật nhất là trở thành Senior Developer, Tech Lead cũng yêu cầu bạn phải có kĩ năng giao tiếp, kĩ năng lãnh đạo, kĩ năng quản lý công việc, và nhiều kĩ năng khác tổng hợp lại.

Nhưng nói vậy không có nghĩa bạn bỏ bê technical skills. Bạn vẫn cần cải thiện chúng vì nó là nền tảng của sự nghiệp dev. Nhưng bạn phải tỉnh táo để phân chia thời gian, nắm bắt cơ hội để học và thực hành các kĩ năng khác.

Sẽ không có ai nói với bạn rằng: “Cậu đã học đủ kiến thức technical rồi đấy, bây giờ hãy học những kĩ năng khác đi”.

Bản thân mình đã đắm đuối theo đuổi việc học technical skills mất 1 năm đầu sự nghiệp. Mình thường xuyên tranh cãi từng chi tiết kĩ thuật từ nhỏ đến lớn với đồng nghiệp vì mình rất tin vào những gì mình đã học (mà về sau mới biết không phải kiến thức nào cũng áp dụng được cho mọi trường hợp). Mình bỏ lỡ cơ hội học cách làm việc với khách hàng, mặc dù ở thời điểm đó mình được trực tiếp nói chuyện với khách hàng mỗi ngày. Mình cũng bỏ lỡ cơ hội học cách phân tích yêu cầu kĩ lưỡng và bàn bạc với đồng nghiệp trước khi code, một kĩ năng rất cần thiết cho sự nghiệp sau này.

Rất may mắn, sau khi bỏ lỡ cơ hội luyện tập nhiều kĩ năng khác và nhìn đồng nghiệp cùng lứa thăng tiến nhanh hơn, mình đã tỉnh ngộ và tìm hiểu được lí do tại sao họ lại đi nhanh hơn mình. Sau khi cân bằng được các kĩ năng để phát triển toàn diện hơn, mình đã có thể tự đưa ra ý kiến, câu hỏi cho khách hàng trong các buổi meeting, làm rõ yêu cầu, phối hợp với đồng nghiệp để tìm ra giải pháp tối ưu nhất và phân chia task hợp lí trước khi bắt tay vào code. Nhờ những kĩ năng này, kết hợp với việc liên tục cải thiện kiến thức technical (không được dừng lại nhé), mình tăng lương nhanh hơn và được tin tưởng chịu trách nhiệm cho những phần việc quan trọng hơn.

Nếu mình không tự nhận ra lúc đó, rất có thể sau nhiều năm trong nghề, mình vẫn chỉ là một “thợ code” mà thôi.

Phải nói rằng, đó là bước ngoặt quan trọng mà bất kỳ lập trình viên nào cũng phải trải qua nếu muốn bứt quá vượt qua mức lương trung bình.

Mình chỉ muốn lưu ý rằng bạn phải thật tỉnh táo, đọc và nghe lời khuyên từ nhiều nguồn để phát triển các kĩ năng toàn diện hơn. Đừng để mình bị bó hẹp trong tư duy “Chỉ cần technical skills thật giỏi là được”.