Bạn đã làm việc trong lĩnh vực lập trình được một thời gian, nhưng dường như kỹ năng của bạn không có nhiều tiến bộ? Bạn cảm thấy bế tắc và không biết làm thế nào để nâng cao tay nghề? Trong bài viết này, VietnamWorks inTECH sẽ cùng bạn bóc tách những nguyên nhân phổ biến khiến bạn code mãi mà chẳng thấy "lên rank" cũng như chia sẻ những lời khuyên hữu ích để bản thân có thể bứt phá và phát triển.

1. Không (thật sự) tiếp nhận feedback

Feedback mang tính xây dựng là chất xúc tác chính thúc đẩy các lập trình viên tiến lên trong sự nghiệp và nâng cao tay nghề của mình. Cho dù là feedback từ Pull Request, feedback của quản lý hay của thành viên trong nhóm, thì cách tiếp nhận feedback có thể là yếu tố tạo nên sự khác biệt giữa một developer xuất sắc và một developer giỏi. Nếu bạn không thể tiếp thu feedback một cách hiệu quả, bạn đang đặt ra giới hạn cho kỹ năng và tiềm năng của mình.

Bạn có thể đang nghĩ rằng “ Tôi rất giỏi trong việc tiếp nhận feedback, tôi không coi đó là chuyện cá nhân và tôi luôn ghi nhận và làm theo với bất kỳ feedback nào cho tôi ”. Mặc dù suy nghĩ như thế là tốt, nhưng đó không phải là cách bạn nên tiếp nhận. 

Sau đây là cách bạn nên tiếp nhận feedback:

  • Đầu tiên, nếu bạn có thắc mắc, không đồng ý với feedback hoặc không hiểu, hãy hỏi rõ về nó. Rất khó để ghi nhớ thông tin nếu bạn không thực sự hiểu nó, hoặc thậm chí tệ hơn, bạn thực sự tin rằng đều đó là phù hợp với bạn. Đừng dễ dãi với code của mình.

  • Hãy ghi chú lại. Viết ra thông tin, lập nhật ký hoặc tài liệu kỹ thuật về những điều bạn đã tiếp thu, cải thiện. Điều này sẽ giúp bạn ghi nhớ thông tin lâu hơn và có cơ sở để đưa ra các quyết định kỹ thuật tốt hơn trong tương lai.

  • Nếu như góp ý bạn nhận được thật sự hữu ích, hãy tiếp tục áp dụng vào các đoạn code cũ tương tự mà bạn từng viết. Thực hành nhiều sẽ giúp bạn hoàn thiện, và bạn sẽ giúp cho codebase tốt hơn so với ban đầu.

  • Truyền đạt lại cho người khác. Điều này khá đơn giản; giảng dạy là cách học tốt nhất. Bằng cách giảng dạy người khác, bạn sẽ hiểu sâu hơn về kiến thức  mình đã tiếp thu và thậm chí có thể học được nhiều hơn thế nữa.

2. Không đặt câu hỏi

Lĩnh vực lập trình rất đặc biệt. Phần lớn kiến thức hữu ích không nằm trong các bài giảng đại học, sách vở hoặc hướng dẫn lập trình. Thực tế, những lập trình viên giỏi thường update chuyên môn thông qua chính những kinh nghiệm thực chiến. Tiếc thay, đa phần năng lực xuất sắc của họ thường tỷ lệ nghịch với khả năng sử dụng ngôn từ để viết lại những kinh nghiệm quý báu ấy một cách rõ ràng.

Do đó, đừng để sự ngại ngùng giết chết sự tò mò, khiến bản thân bị tụt hậu hay đặt cái tôi quá lớn mà làm mất đi cơ hội học hỏi từ những người đồng nghiệp tài năng. 

Tóm lại: Hãy xóa ngay những “rào cản” tâm lý: "Mình có đang làm phiền người này không nhỉ ?" hay "Lỡ như họ đánh giá mình ”yếu nghề” thì sao? ", bởi đã không biết mà còn im lặng “chịu trận” thì khi đó bạn mới thực sự là kẻ ngốc.   

3. Tránh những vấn đề phức tạp

Lún sâu vào lối mòn trong lập trình là điều mà có thể nhiều người sẽ gặp phải. Bạn dễ dàng thỏa hiệp làm những công việc mà mình cảm thấy thoải mái và không bao giờ thử thách bản thân giải quyết một công việc mới hay một vấn đề thực sự phức tạp.

Có rất nhiều lập trình viên liên tục nhận các nhiệm vụ dễ dàng và không bao giờ dám giải quyết những nhiệm vụ khó, dẫn đến việc nhanh chóng bị tụt hậu so với những người khác. Bởi lẽ, vấn đề khó là ”người thầy” dạy bạn nhiều kiến thức thực tiễn nhất ; buộc bạn  phải suy nghĩ khác biệt và khám phá các giải pháp công nghệ mới để giải quyết những vấn đề này. 

Ví dụ, bạn là một lập trình viên full-stack chỉ liên tục nhận các nhiệm vụ front-end (giao diện người dùng), thì đoán xem? Trong vài năm tới, bạn sẽ chỉ là một lập trình viên front-end. Cũng như việc bạn là một lập trình viên back-end nhưng chỉ làm các tác vụ nhỏ, đơn giản thì bạn sẽ sớm quên cách tích hợp hoặc triển khai các tính năng phức tạp. Bạn sẽ mất đi những gì bạn đã học mà không sử dụng.

4. Không bao giờ làm các dự án cá nhân

Một lập trình viên giỏi thì không có nghĩa là bạn nên dành toàn bộ thời gian ngoài giờ làm việc cho một dự án phụ, nhưng ít nhất cũng nên có một vài dự án riêng cho mình Để phát triển sự hiểu biết toàn diện về hệ thống thì đây chính là phương pháp tốt nhất. Trong hầu hết các công việc lập trình, một lập trình viên chuyên về một hoặc hai lĩnh vực sẽ khiến bạn hạn chế cơ hội phát triển nghề nghiệp của mình. Làm việc trên một dự án từ đầu có thể lấp đầy những lỗ hổng kiến thức và dạy bạn những điều như thiết kế hệ thống, quản lý sản phẩm, tích hợp, xác thực, devops, v.v.

Một lý do tuyệt vời khác để làm các dự án phụ là áp dụng kiến ​​thức vào thực tế. Học từ sách vở và người hướng dẫn là một chuyện, nhưng áp dụng những điều bạn học được vào một dự án của riêng bạn lại hoàn toàn khác. Khi bạn học từ hướng dẫn, luôn có câu trả lời "đúng" và có người hướng dẫn bạn thực hiện. Khi bạn tự làm việc, bạn phải tìm ra giải pháp tốt nhất cho trường hợp của mình thông qua nghiên cứu và tư duy phản biện, điều này củng cố sự hiểu biết sâu sắc hơn bên trong bạn.

5. Không bao giờ thay đổi vai trò công việc hoặc công ty

Khi bạn thay đổi vai trò công việc hoặc công ty, bạn sẽ nhận được một số điều sau:

  • Bạn được tiếp xúc với những đồng đội mới có thể dạy cho bạn những điều mới

  • Bạn làm những nhiệm vụ mới buộc bạn phải suy nghĩ khác đi

  • Bạn làm việc với nhiều công nghệ khác nhau, giúp bạn có gia tăng năng lực làm việc và tích lũy vào CV cho các cơ hội trong tương lai

Có thể nói những thay đổi này là động lực to lớn để giúp bạn học hỏi và cải thiện, đóng vai trò thúc đẩy khả năng lập trình của bạn. 

6. Không bao giờ chuyển đổi ngôn ngữ lập trình

Điều này có thể khiến nhiều lập trình viên cảm thấy không thoải mái, đặc biệt là những người khẳng định rằng ngôn ngữ lập trình của họ là tốt nhất. Sự thật là, có rất nhiều giá trị đến từ việc học và thực hành các ngôn ngữ khác nhau. Một ngôn ngữ lập trình cuối cùng chỉ là một công cụ, và bạn nên chọn công cụ tốt nhất cho công việc, không có công cụ nào là tốt nhất mãi mãi. IT nào biết nhiều công cụ hơn sẽ dễ dàng thích nghi hơn.

Bạn có thể yêu thích C++ và ghét Javascript, nhưng cuối cùng Javascript vô cùng phù hợp cho phát triển frontend. Cố gắng viết code frontend bằng C++ sẽ giống như cố gắng gõ phím bằng một cái cờ lê, nó không phải là công cụ phù hợp cho công việc đó, mặc dù nó rất hữu ích trong các ngữ cảnh khác. Tương tự, nếu bạn phải viết một ứng dụng đòi hỏi hiệu suất cao và tối ưu, bạn nên tránh sử dụng python, mặc dù nó không phải là ngôn ngữ lập trình tồi, chỉ là không phù hợp cho công việc đó.

Các tiêu chuẩn và yêu cầu của ngành thay đổi thường xuyên. Dưới đây là một hình minh họa so sánh các ngôn ngữ lập trình phổ biến nhất theo thời gian. Học các ngôn ngữ lập trình khác nhau sẽ cho phép bạn thay đổi cùng với xu hướng ngành và luôn được săn đón.

Lời kết

VietnamWorks inTECH hy vọng, từ những chia sẻ ở trên bạn đã có thể tìm ra được nguyên nhân và giải pháp giúp phát triển kỹ năng nghề nghiệp của mình hơn. Hãy nhớ rằng, sự tiến bộ không đến từ việc làm đi làm lại những gì bạn đã biết, mà từ việc dám đối mặt với những thử thách mới và không ngừng học hỏi.

VietnamWorks inTECH

TẠO TÀI KHOẢN MỚI: XEM FULL “1 TÁCH CODEFEE” - NHẬN SLOT TƯ VẤN CV TỪ CHUYÊN GIA - CƠ HỘI RINH VỀ VOUCHER 200K