Bài viết được dịch từ trang web Sitepoint

Trong bài viết trước chúng ta đã xem qua những ngôn ngữ lập trình tốt nhất để học trong năm 2015. JavaScript, Java, PHP và Python xuất hiện như là những lựa chọn tốt khi bạn phân tích sự phổ biến của chúng trên các trang như GitHub và StackOverflow.

Ngôn ngữ lập trình nào có nhu cầu nhiều nhất và lương cao nhất?
Ngôn ngữ lập trình nào có nhu cầu nhiều nhất và lương cao nhất?

Ngoài ra, có lẽ chúng ta có thể xác định các công nghệ "tốt nhất" để học từ các số liệu liên quan đến công việc như: nhu cầu tuyển dụng và tiền lương? Công ty tuyển dụng Gooroo đã tiến hành khảo sát trên 500.000 vị trí việc làm về CNTT ở khắp 3 nước Mỹ, Anh và Úc và cho ra báo cáo về mức lương và nhu cầu tuyển dụng năm 2015. 

Top 10 công nghệ được tuyển dụng nhiều nhất

Các công nghệ sau đây được đăng quảng cáo tuyển dụng nhiều nhất:

  1. Java — có mặt trong 18% các quảng cáo với mức lương trung bình là $100.000 đô-la (khoảng 2.2 tỷ VNĐ/năm)
  2. JavaScript — 17%, $90,000 (khoảng 2 tỷ VNĐ/năm)
  3. C# — 16%, $85,000 (khoảng 1.9 tỷ VNĐ/năm)
  4. C — 9%, $90,000 (khoảng 2 tỷ VNĐ/năm)
  5. C++ — 9%, $95,000 (khoảng 2.1 tỷ VNĐ/năm)
  6. PHP — 7%, $75,000 (khoảng 1.7 tỷ VNĐ/năm)
  7. Python — 5.5%, $100,000 (khoảng 2.2 tỷ VNĐ/năm)
  8. R — 3%, $95,000 (khoảng 2.1 tỷ VNĐ/năm)
  9. Scheme — 3%, $65,000 (khoảng 1.4 tỷ VNĐ/năm)
  10. Perl — 3%, $100,000 (khoảng 2.2 tỷ VNĐ/năm)

Đây là những số liệu thống kê cho khắp thế giới nhưng sẽ có một sự thiên lệch theo Mỹ vì thị trường này lớn hơn. C# đứng đầu tại nước Anh (32%), trong khi JavaScript đứng số 1 tại Úc (13%).

Top 10 công nghệ được trả lương cao nhất

Tất cả các công nghệ sau đây đều có mức lương nhiều hơn $100.000 đô-la (khoảng 2.2 tỷ VNĐ/năm), riêng các nhà phát triển Erlang kiếm được trung bình $125.000 đô-la (khoảng 2.75 tỷ VNĐ/năm):

  1. Erlang
  2. Clojure
  3. Haskell
  4. Lua
  5. Lisp
  6. Groovy
  7. Scala
  8. F#
  9. Ruby
  10. Python

Một điều thú vị là, chỉ có Python xuất hiện trong cả 2 danh sách. Điều đó có làm cho nó trở thành sự lựa chọn tốt nhất?

Cẩn thận với thống kê của Gooroo

Trước khi bạn nhào đến gõ cửa phòng Sếp để đòi tăng lương và xin được đào tạo lại về Python, thì Gooroo cũng tiết lộ rằng:

  • Không phải tất cả các công việc đều được quảng cáo, và họ cũng không thể thống kê hết mọi vị trí tuyển dụng.
  • Thông tin về lương khá thưa thớt, và khi có thì thường được ghi thành một khoảng.
  • Dữ liệu bao gồm cả các hợp đồng tạm thời và các vai trò làm toàn thời gian cố định, điều này có thể dẫn tới mức lương khác nhau rất lớn.
  • Các công việc thường đòi hỏi nhiều hơn một kỹ năng. Trong những tình huống này, Gooroo chia mức lương đó cho số lượng các kỹ năng để có được một mức trung bình cho mỗi kỹ năng.
  • Có thể rất khó để trích xuất các kỹ năng, ví dụ: Microsoft SQL Server có thể được gọi là “SQL Server”, “MSSQL”, “SQL 2014″, v.v... (Một lưu ý cá nhân là, tôi chưa từng gặp một nhà tuyển dụng nào hiểu được Java không phải là JavaScript!)

Bản báo cáo này khá thú vị, chứa đựng những thông tin hữu ích và tạo ra những kết luận khá hợp lý. Thật không may, các thống kê về nhu cầu tuyển dụng và mức lương sẽ tạo ra hiểu lầm trừ khi bạn phải xem xét những mặt hạn chế của nó. Các vấn đề sau đây nên được chú ý...

Những tổ chức lớn có một tầm ảnh hưởng lớn hơn

Khâu tuyển dụng là rất tốn kém. Các công ty môi giới tuyển dụng thường tính phí là 25% tiền lương năm đầu tiên khi tìm giúp các ứng viên phù hợp, để họ có thể mua được các quảng cáo online và offline trên các phương tiện truyền thông.

Điều này giải thích lý do tại sao Java (chiếm 18%) và C# (chiếm 16%) số lượng các quảng cáo tuyển dụng. Không phải là do chúng tốt hơn những ngôn ngữ khác, mà do các tập đoàn lớn thường đầu tư vào chúng, bởi vì:

  1. họ có những mục tiêu kinh doanh lâu dài
  2. họ sử dụng nhiều các nhà phát triển và không thể chuyển đổi nền tảng một cách nhanh chóng
  3. những công nghệ này có sẵn với sự hỗ trợ từ Oracle và Microsoft.

Các công ty nhỏ hơn có thể có nhiều vị trí tuyển dụng và mức lương tương tự cho PHP, Node.js hoặc Ruby. Tuy nhiên, họ sẽ không muốn hoặc không thể trả những khoản phí tuyển dụng quá đắt. Các quảng cáo của họ ít nổi bật hơn, vì vậy kết quả có thể bị thiên lệch.

Mức lương trung bình

Liệu có công bằng không khi các lập trình viên PHP được trả lương thấp hơn 25% so với các lập trình viên Java? Không -- nhưng đó không phải là sự thật.

Tiền lương được dựa trên giá trị của sản phẩm mà bạn đang làm và đóng góp của cá nhân bạn vào dự án đó. Không quan trọng việc bạn sử dụng Java, PHP, COBOL hay QBasic.

Mặc dù các số liệu ở trên, có nhiều vị trí tuyển dụng PHP hơn Java; PHP chạy trên 80% máy chủ web trên khắp thế giới và sức mạnh của WordPress chiếm 1/4 số lượng website. Bạn sẽ tìm thấy những công việc mà PHP được trả cao hơn Java, nhưng bạn cũng sẽ tìm thấy nhiều công việc trong phát triển theme hoặc hỗ trợ trang web nói chung ở mức thấp của thang bậc lương. Vì vậy mà mức lương trung bình của công nghệ PHP bị giảm đi.

Sự không nhất quán về tên công việc

Bạn sẽ hiếm khi nhìn thấy các quảng cáo tuyển dụng kiểu “Java Developer”, “PHP Professional” hoặc “Python Programmer”. Vai trò được trả lương cao nhấtService-Oriented Architecture? Cái tên này có thể mô tả các kỹ năng được yêu cầu cho mọi nhà phát triển, bất kể ngôn ngữ chuyên môn của họ là gì.

Các công việc đòi hỏi nhiều kỹ năng kết hợp

Cái thời mà bạn chỉ cần thành thạo một ngôn ngữ lập trình duy nhất vẫn có thể sống tốt đã qua rồi. Hầu hết các vai trò đều đòi hỏi nhiều kỹ năng - bao gồm phân tích nghiệp vụ, xây dựng kiến trúc hệ thống, thiết kế cơ sở dữ liệu, chuyển đổi dữ liệu giữa các định dạng, các framework, thiết kế đồ họa, phát triển front-end và hỗ trợ. Những người làm việc ở lĩnh vực web sẽ cần có khả năng làm việc với HTML, CSS và JavaScript thậm chí khi các quảng cáo việc làm quên đề cập đến chúng.

Các sự kiện trong quá khứ không xác định xu hướng tương lai

Công nghệ thay đổi nhanh chóng, dù bạn phải mất nhiều năm mới trở thành một lập trình viên đẳng cấp. Nếu chúng ta nhìn lại khoảng 5 năm, lúc đó Node.js vừa mới ra đời, và các công việc liên quan đến front-end vẫn chưa phổ biến lắm. 10 năm về trước, iOS và Android vẫn chưa tồn tại. 15 năm về trước, ColdFusion và Classic ASP với VBS là các nền tảng phát triển web phổ biến. 20 năm về trước, một số ít nhà phát triển mạo hiểm vượt quá C++ và Visual Basic.

Thậm chí những công nghệ đã tồn tại được trong một khoảng thời gian dài sẽ vẫn thay đổi mức độ phổ biến của chúng.

Vậy thì tôi nên học cái gì?

Lập trình là một niềm đam mê. Nó đòi hỏi một sự kết hợp của tư duy logic, kinh nghiệm, sáng tạo, trí tưởng tượng và sự tò mò. Một số người trở nên giỏi một cách tự nhiên, nhưng không có con đường tắt nào cả. Phải mất một lượng thời gian đáng kể để đạt được một trình độ chấp nhận được, và bạn không bao giờ được phép ngừng việc học hỏi. Sau tất cả, hãy chuẩn bị từ bỏ những công nghệ lỗi thời mà bạn đã dành nhiều năm trời để trở nên thành thạo nó.

Trước khi bạn bắt tay vào chuẩn bị cho một nghề nghiệp phát triển phần mềm, hãy hỏi bản thân mình một câu hỏi duy nhất:

Liệu tôi sẽ viết các chương trình trong thời gian rảnh rỗi để có được sự vui thích?

Hãy thành thật với chính mình. Chỉ một người duy nhất có thể thúc đẩy bạn. Chỉ một người duy nhất có thể dạy bạn lập trình. Chỉ một người duy nhất có thể dành thời gian, năng lượng và những chi phí cần thiết để học những kỹ năng đó. Nếu bạn không chuẩn bị trước khi đầu tư thời gian công sức vào việc học lập trình, thì không ai khác có thể làm điều đó giúp bạn - và có lẽ bạn nên chọn một nghề nghiệp mà bạn quan tâm nhiều hơn hoặc đòi hỏi nỗ lực ít hơn.

Việc lựa chọn một công nghệ riêng lẻ nào đó dựa trên các cuộc khảo sát, mức lương hoặc các ý kiến của những người khác cũng sẽ thất bại. Hãy hoàn thành những tác vụ phát triển nhỏ của bạn và tiếp xúc với nhiều ngôn ngữ, công cụ và kỹ thuật nhất có thể. Nghiên cứu code và thảo luận với các đồng nghiệp của bạn về nó. Kiến thức đó sẽ trở thành vô giá khi bạn thực hiện những dự án ngày càng phức tạp hơn.

Bạn có thể đạt đến một điểm nơi mà ai đó sẽ trả tiền hậu hĩnh cho trình độ chuyên môn của bạn, nhưng đừng quá phụ thuộc vào nó. Được trả tiền cho một công việc mà bạn yêu thích là một phần thưởng lớn hơn nhiều. Nếu bạn không thích lập trình, nó sẽ trở thành một công việc nhàm chán, và không có tiền bạc nào có thể mang lại cho bạn hạnh phúc được cả.

Bạn còn chờ gì nữa? Hãy suy nghĩ về một vấn đề và viết code giải pháp cho nó. Bạn có thể chọn một công nghệ rắc rối nào đó để làm, nhưng trải nghiệm đó mới là quan trọng - không phải là ngôn ngữ.

Tham khảo:

Các khóa học lập trình tại TechMaster sẽ cung cấp cho bạn những kỹ năng thực tế nhất để có thể xin được việc làm. Với nhiều mô hình đào tạo như online, offline, và FlipLearning (kết hợp giữa online với offline). Bạn có thể xem thông tin chi tiết về các khóa học tại đây.