+1

80% Kỹ sư phần mềm thất bại trong việc trở thành lập trình viên cấp cao – Và đây là lý do

Bạn có biết rằng 80% kỹ sư phần mềm không thể trở thành lập trình viên cấp cao không? Đây chính là lý do tại sao, và hôm nay trong bài viết này, chúng ta sẽ thảo luận về điều đó. Nếu bạn mắc phải tất cả những sai lầm này, hãy dừng lại ngay lập tức, nếu không, bạn sẽ gặp rất nhiều vấn đề trong sự nghiệp.

Lý do 1: Mù quáng sử dụng ChatGPT và Stack Overflow

Khi gặp một vấn đề hoặc lỗi trong code, bạn ngay lập tức tìm đến ChatGPT, Stack Overflow hoặc một nơi nào đó, sau đó sao chép và dán (copy-paste) đoạn mã vào chương trình của mình. Bạn không bao giờ nên làm điều này một cách mù quáng. Nếu bạn sao chép mã từ bất kỳ đâu, trước tiên hãy hiểu nó đang làm gì — tại sao code của bạn không chạy, tại sao đoạn mã kia lại hoạt động. Sau đó, bạn mới có thể điều chỉnh và sử dụng nó một cách đúng đắn.

Trong tương lai, nếu gặp phải một vấn đề tương tự, bạn sẽ không cần phải copy-paste một cách vô thức nữa. Việc sao chép mã không phải là điều xấu — tất cả các lập trình viên, kể cả kỹ sư cấp cao, đều làm vậy. Sự khác biệt giữa một kỹ sư cấp cao và một kỹ sư cấp thấp là khi họ sao chép mã, họ hiểu chính xác mã đó hoạt động như thế nào, tại sao nó chạy được hoặc không chạy được, và vấn đề có thể nằm ở đâu. Vì vậy, nếu bạn phải copy-paste, hãy đảm bảo rằng bạn thực sự hiểu rõ đoạn mã trước khi sử dụng nó. Đừng bao giờ sao chép một cách vô thức.

Lý do 2: Thiếu tư duy thiết kế hệ thống và khả năng mở rộng

Lý do tiếp theo là nhiều lập trình viên không áp dụng thiết kế hệ thống (system design) hoặc không quan tâm đến khả năng mở rộng (scalability). Điều này xảy ra rất nhiều — nhiều người làm việc trong các công ty dịch vụ hoặc sản phẩm nhưng không ở vị trí quan trọng trong nhóm. Họ chỉ làm những nhiệm vụ lặp đi lặp lại mỗi ngày mà không thực sự học hỏi điều gì mới. Họ không thể hiểu được cách viết code ở cấp độ chuyên nghiệp.

Làm các dự án cá nhân và học về mẫu thiết kế (design patterns)

Trong nhiều công ty, không có quy trình review code đúng chuẩn. Mọi người chỉ làm việc của họ, đẩy code lên, nếu có lỗi thì sửa. Và đó chính là vấn đề. Thay vào đó, bạn nên thực hiện các dự án cá nhân và học về design patterns. Bạn không thể lúc nào cũng đổ lỗi cho công ty hoặc đồng nghiệp. Khi bạn biết mình cần làm gì, bạn có thể tự phát triển thông qua các dự án riêng.

Hãy áp dụng các nguyên tắc thiết kế hệ thống, khả năng mở rộng và design patterns, vì chúng vô cùng quan trọng khi bạn viết code ở cấp độ sản phẩm thực tế. Tất cả những kiến thức này đều có sẵn miễn phí trên internet — hãy học chúng. Bạn có thể sử dụng ChatGPT hoặc tham gia các khóa học nếu cần. Miễn là kỹ năng của bạn ngày càng tốt hơn, bạn không cần lo lắng về tiền bạc, vì tiền có thể kiếm lại được, nhưng thời gian thì không thể lấy lại. Vì vậy, hãy liên tục nâng cao kỹ năng của mình.

Lý do 3: Không chịu trách nhiệm

Lý do thứ ba khiến nhiều kỹ sư phần mềm không thể trở thành lập trình viên cấp cao là do họ không chịu trách nhiệm hoàn toàn về các dự án của mình. Khi công việc được giao, một lập trình viên cấp dưới thường chỉ cố gắng hoàn thành nhanh chóng. Nhưng khi bạn là một lập trình viên cấp cao, bạn cần phải hoàn toàn chịu trách nhiệm. Nếu có một nhiệm vụ nào đó đến với bạn, hãy nói: “Tôi sẽ xây dựng nó một cách chỉn chu, tôi sẽ kiểm tra nó cẩn thận, và chỉ khi mọi thứ ổn tôi mới triển khai.” Một lập trình viên cấp dưới có thể không có cơ hội học hết các bước này.

Sự quan trọng của trách nhiệm:

Ngay cả khi công ty của bạn không có quy trình rõ ràng, bạn vẫn nên tự hỏi: “Mình có đang làm đúng không?” Sau ba đến bốn năm, bạn phải trở thành một kỹ sư phần mềm cấp cao, và điều đó đồng nghĩa với việc bạn cần có trách nhiệm với dự án của mình từ đầu đến cuối. Bạn phải tự kiểm tra, gỡ lỗi và triển khai code của mình. Càng sớm bắt đầu làm chủ công việc, bạn càng thu được nhiều lợi ích.

Kỳ vọng mức lương và kiểm tra toàn diện:

Và hãy thực tế — mức lương của bạn có thể tăng gấp đôi sau bốn đến năm năm kinh nghiệm, nhưng điều đó không phải là thước đo duy nhất của sự phát triển. Nếu bạn muốn trở thành một lập trình viên giỏi, hãy chịu trách nhiệm về công việc của mình, kiểm tra nó một cách toàn diện, và luôn sẵn sàng giải quyết vấn đề khi phát sinh.

Lý do 4: Kỹ năng giao tiếp kém

Tiếp theo, kỹ năng giao tiếp kém là một rào cản lớn. Nhiều lập trình viên không thể diễn đạt tốt hoặc không thể kết nối với quản lý dự án hoặc khách hàng của họ. Đây là một trong những lý do quan trọng khiến hầu hết mọi người không thể trở thành kỹ sư phần mềm cấp cao.

Thường thì nguyên nhân là do họ quá hướng nội. Nếu bạn không thể truyền đạt rõ ràng những gì bạn đang làm hoặc những gì bạn cần, điều đó sẽ cản trở bạn trong việc đảm nhận trách nhiệm dự án và phát triển sự nghiệp của mình.

Lý do 5: Không nâng cao kỹ năng (Upskilling)

Vậy bạn cần làm gì nếu muốn trở thành một kỹ sư phần mềm cấp cao? Ai cũng muốn một ngày nào đó trở thành senior developer, dẫn dắt một nhóm, và có mức lương cao hơn. Nhưng điều đó bắt đầu từ việc nâng cao kỹ năng của bản thân. Không phải ai cũng có điều kiện thuận lợi để học hỏi hoặc phát triển kỹ thuật dễ dàng, nhưng bạn không được dừng lại. Bạn cần phải bắt đầu cải thiện từng bước một.

Chủ động học công nghệ mới:

Nếu bạn chưa biết về thiết kế hệ thống (system design), mẫu thiết kế (design patterns), cách hoạt động của indexing và caching, thì bạn cần chủ động học hỏi. Khi bạn bắt đầu có trách nhiệm với quá trình học tập của chính mình, bạn đang đi trên con đường của một kỹ sư phần mềm cấp cao.

Nâng cao kỹ năng không chỉ là tiếp tục làm những gì bạn đã quen thuộc. Nếu bạn là lập trình viên back-end, hãy học về RabbitMQ, Redis, Kafka và các công nghệ tương tự. Nếu bạn là lập trình viên front-end, hãy cải thiện kỹ năng UI và cố gắng có kinh nghiệm thực tế với back-end.

Sự kiên trì và tăng trưởng dài hạn:

Việc nâng cao kỹ năng không diễn ra trong một sớm một chiều. Nó cần thời gian—có thể sáu, bảy tháng, hoặc thậm chí một năm làm việc liên tục—trước khi bạn có thể đạt đến vị trí kỹ sư phần mềm cấp cao. Bí quyết là nâng cấp bản thân từng ngày.

Lời kết

Nếu bạn đang mắc những sai lầm như sao chép mã mà không hiểu, không chịu trách nhiệm với dự án, không nâng cao kỹ năng, hoặc có kỹ năng giao tiếp kém, thì đã đến lúc thay đổi ngay lập tức. Nếu bạn muốn trở thành một kỹ sư phần mềm cấp cao trong ba đến bốn năm, hãy bắt đầu đi đúng hướng từ hôm nay.

Và nếu bạn đang đi đúng hướng, hãy tiếp tục; nếu không, hãy hỏi ai đó — hoặc tự hỏi chính mình — làm thế nào để đi đúng hướng.

Cảm ơn các bạn đã theo dõi!


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí