Đâu là ngôn ngữ nên học cho người mới bắt đầu (phần 2)

(Tiếp theo phần 1)

Đây là bài viết được dịch từ blog của Codementor.

Cơ hội nghề nghiệp

Giờ chúng ta đã biết một chút về sự khác nhau giữa các ngôn ngữ và độ khó của chúng. Như vậy không phải tất cả các ngôn ngữ đều có nhu cầu nhân lực và mức lương giống nhau. Nếu bạn đặt mục tiêu học lập trình để tăng cơ hội nghề nghiệp của bản thân, và không bị mọi người thuyết phục về việc học một ngôn ngữ nào đó khó thế nào, thì dưới đây là một số điểm giúp bạn tìm ra đâu là ngôn ngữ phù hợp.

Dựa trên ước tính về lương thông qua việc phân tích các quảng cáo việc làm trên indeed.com, chúng ta có thể chia ngôn ngữ lập trình thành 9 lớp.

Theo kết quả này, rõ ràng là Ruby/Ruby on Rails sẽ đem lại cho bạn nhiều tiền nhất, trong khi C++, iOS và JavaScript cũng là lựa chọn đáng cân nhắc. Nếu lương là mối quan tâm chính của bạn thì có lẽ C, PHP, và SQL không phải lựa chọn tốt nhất...hay ngược lại?

Mức lương trung bình có thể bị ảnh hưởng bởi nhiều yếu tố như nhu cầu (có bao nhiêu tin tuyển dụng), nguồn cung (có bao nhiêu dev biết ngôn ngữ đó), kinh nghiệm (đương nhiên junior sẽ kiếm được ít hơn senior), nên sẽ tốt hơn nếu cân nhắc kỹ đến các yếu tố này trước khi đưa ra bất cứ kết luận nào.

Xu hướng việc làm

Làm cách thế nào để có được công việc tốt dựa trên ngôn ngữ mà bạn biết? Dưới đây là một cái nhìn nhanh về xu hướng việc làm từ indeed.com.

Chúng ta có thể thấy C, SQL, Java, và JavaScript rất hay được đề cập đến trong các quảng cáo việc làm, trong khi C#, C++, và Python cũng là ngôn ngữ đáng để quan tâm.

Tuy nhiên nếu mục tiêu của bạn là Startup thì hẳn xu hướng việc làm từ indeed.com không phải là chỉ số phù hợp nhất. AngelList là site thường đăng tải các bài viết tuyển người cho startup, chúng ta hãy nhìn qua về nhu cầu kỹ năng lập trình dựa trên các quảng cáo tuyển kỹ sư phần mềm trên AngelList.

Lại một lần nữa, JavaScript trở thành kỹ năng có nhu cầu lớn nhất. Các nhà startup có vẻ ưu ái Python và Java (vị trí mà 2 năm trước đây từng là Ruby (on Rails)) hơn là Ruby, PHP, C, or C#.

Thị trường cung cấp Developer

Cùng nhìn vào những kỹ năng mà các mentor Codementor đang có.

Đương nhiên đây không phải là mô tả chính xác về thị trường thực tế nhưng nó sẽ cho chúng ta một gợi ý hay về nguồn cung developer. Như các bạn có thể thấy, mặc dù mảng mobile app đã bùng nổ được một khoảng thời gian nhưng những chuyên gia Objective-C vẫn còn rất khan hiếm. Với một nguồn cung khan hiếm những dev Objective-C giỏi như vậy, đương nhiên mức bồi thường cho họ sẽ cao hơn.

Ở mặt khác PHP dường như có nguồn cung khá mạnh trong lực lượng lao động, điều này có nghĩa các nhà tuyển dụng sẽ có nhiều lựa chọn hơn do đó họ có sức mạnh hơn khi đàm phán lương. Thêm vào đó dev PHP không có được nhu cầu cao như Java, SQL, or JavaScript nên nói chung họ sẽ kiếm được ít hơn. JavaScript là trường hợp rất đặc biệt. Mặc dù có nguồn cung lớn nhất nhưng JavaScript lại không nằm ở đáy tháp lương. Chúng ta hãy xem xét trường hợp JavaScript trong bài viết này sau.

Mức lương

Giờ bạn đã có cái nhìn sơ bộ về nhu cầu cũng như nguồn cung của từng ngôn ngữ, hãy cùng xem mức lương tiềm năng mà bạn có thể nhận được dựa trên thông tin về lương trên các quảng cáo việc làm. Dữ liệu được lấy từ gooroo.io - nơi dữ liệu thường được tính là giá trị trung bình từ mức lương được offer trên các quảng cáo cá nhân.

Như các bạn có thể thấy ở đây, dev Ruby, C++, hay Java có mức lương khởi điểm cao hơn. Trong khi dev Python và Ruby có mức lương tiềm năng cao hơn, điều đó có nghĩa dev Ruby/Python tốt khá khan hiếm và có được nhu cầu rất cao. JavaScript có vẻ có một bước trượt dài trên mức lương tiềm năng khi nó đã từng lên tới 188,168 USD tháng 4 năm 2015 nhưng giờ chỉ khoảng 107k USD. Tuy nhiên, JavaScript vẫn duy trì là một case đặc biệt, hãy xem tại sao nhé.

Kỹ sư phát triển phần mềm thực tế kiếm được bao nhiêu ở mỗi thành phố.

Các trường hợp đặc thù: JavaScript Frameworks

Nếu chỉ đơn giản là so sánh JavaScript với các ngôn ngữ khác thì không thể dự đoán chính xác được sẽ kiếm được bao nhiêu nếu biết JavaScript. Như tôi đã giải thích trong phần khái quát về các ngôn ngữ lập trình, JavaScript được chia làm rất nhiều loại. Để thúc đẩy phát triển website bên front-end, rất nhiều framework đã được phát triển. Vậy nên nếu bạn chỉ biết JavaScript hay jQuery thì khó có thể kiếm được nhiều hơn những bạn JavaScript dev nắm được các framework của JavaScript. Hãy xem mức lương trung bình của các kỹ sư JavaScript phân theo từng framework tại Mỹ. (React & Backbone là library, không coi là framework. Node.js không chỉ là một môi trường)

Mức lương trung bình không hề tồi. rõ ràng triển vọng của Node.js rất sáng sủa. Để có thể học được những kỹ thuật này cần phải biết JavaScript, JavaScript là một kỹ năng sinh lợi. Giờ thì hãy cùng xem nhu cầu về dev của từng framework này:

Node.js thường được sử dụng trong phát triển back-end nên nếu các bạn chỉ tìm kiếm framework cho front-end thì rõ ràng AngularJS là người chiến thắng với nhu cầu tăng vọt. Vậy nên nếu bạn muốn đi vào phát triển front-end thì hẳn bạn sẽ muốn học AngularJS.

React mặt khác là một công nghệ khá mới, và đã đạt được đà tăng ở tốc độ cạnh tranh với giai đoạn đầu của AngularJS. Có thể react vẫn còn tiếp tục trong đà tăng trưởng và có khả năng có được nhu cầu rộng rãi hơn, vì nói chung nó có hiệu suất cao hơn AngularJS và do đó sẽ mang lại trải nghiệm tốt hơn cho người dùng.

(còn tiếp)