Năm nay Apiumhub cộng tác cùng với Codingsans và các công ty lập trình khác như: clutch, gitkraken, Cooperpress, Level-up, Clockwise, VisionX, Code Climate, LingoHub, Usersnap cùng góp “công” vào cuộc nghiên cứu về software development toàn cầu để tìm ra giải pháp cho các công ty thu hút các lập trình viên, những ngôn ngữ nào là phổ biến nhất, đâu là những thử thách thường gặp, v…v… Kết quả đã có hơn 700 câu trả lời từ nhiều quốc gia trên thế giới và hy vọng rằng bạn sẽ tìm thấy những điều hữu ích trong report này.
Preview về một số về những Fun Fact về ngành lập trình
Hãy nhìn qua 1 số dữ liệu để có cái nhìn rõ hơn về những thứ bạn có thể mong đợi từ report này. Xin nhấn mạnh rằng trong bài viết này bạn sẽ không tìm thấy 1 lời giải thích chi tiết cho mỗi đồ thị và câu hỏi.
Như chúng ta đã biết, lập trình là 1 lĩnh vực thay đổi nhanh không ngừng. Hầu hết mỗi năm chúng ta đều thấy một vài ngôn ngữ mới, kiến trúc phần mềm mới, cũng như container và phương pháp mới. Một tool hay ngôn ngữ đang được sử dụng nhiều ở hiện tại có thể sẽ trở nên lỗi thời ngay vào năm sau. Năm nay mục tiêu của chúng tôi là để nhìn lại tổng quan về tình trạng hiện tại của ngành lập trình và đưa ra kết luận về hướng đi sắp tới của ngành.
Report này có nhiều chương, phần đầu tiên của report là về những thử thách mà các team lập trình đang phải đối mặt và giải pháp họ đang cố triển khai thực hiện. Trong phần này, bạn sẽ còn tìm thấy những ngôn ngữ lập trình cũng như các tool quản lý dự án phổ biến nhất.
Phần thứ 2 của report sẽ là về việc tuyển dụng / gìn giữ và những thách thức / giải pháp, vốn đang là những thách thức lớn nhất mà các công ty công nghệ đang phải đối mặt. Và chương cuối cùng sẽ tập trung vào việc quản lý hiệu suất.
Đây đã là lần thứ 3 được tiến hành khảo sát, vì thế bạn sẽ cảm thấy tốt hơn khi có sự so sánh giữa những năm 2018, 2019, 2020 và xem những gì đã thay đổi cũng như bằng cách nào nó lại diễn ra như thế.
Những fact hàng đầu về ngành lập trình
-
Những thử thách trong ngành lập trình
Thử thách lớn nhất mà các công ty công nghệ đang đối mặt có liên quan tới khả năng (capacity) : cung cấp phần mềm làm việc trong khi backlog thì full và năng lực bị hạn chế. Theo sát thách thức này là về việc chia sẻ kiến thức. Nếu ta so sánh nó với năm ngoái, chúng ta sẽ thấy rằng nó vẫn giữ như thế – năm ngoái các công ty cũng có các thử thách tương tự.
Ok, nhưng giải pháp sẽ là gì?
Các team sẽ làm gì để vượt qua thử thách về năng lực? Giải pháp phổ biến nhất chính là thuê thêm người – nhiều lập trình viên hơn có thể giải quyết công việc tốt hơn. Sau đó là thực hiện triển khai các phương thức agile. Và 1 lần nữa, các giải pháp cũng khá giống với năm ngoái.
Và các team sẽ làm gì để giải quyết vấn đề chia sẻ kiến thức? Cách phổ biến nhất là cố vấn đào tạo (mentoring). Ngoài ra, việc pair programming và review code cũng là giải pháp tiềm năng nhất. Bạn triển hackathon cho công ty để mài dũa các lập trình viên của bạn hoặc các hoạt động chia sẻ / gắn kết xây dựng văn hoá công ty khác mà vẫn làm cho nhân viên cảm thấy thoải mái, vui vẻ.
Tới đây thì có 1 chút khác biệt, năm ngoái các công ty đều tập trung vào các session về chia sẻ kiến thức như là những bữa ăn trưa, meeting, tech talk. 1 phương pháp khác là bằng việc review code và bằng cách có các internal wiki, documentation cho team có thể làm chủ trì trên bất kỳ tool cộng tác team nào.
-
Các ngôn ngữ lập trình
Những ngôn ngữ nào đang phổ biến nhất? Và những ngôn ngữ nào sẽ được sử dụng trong vòng 12 tháng tiếp theo? Câu trả lời đang nằm ở dưới đây:
Nguồn: Tình trạng ngành lập trình
Cũng như ta có thể thấy, ngôn ngữ được sử dụng rộng rãi nhất là JavaScript, 59.08%.
Điều gây tò mò hơn là 35.05% những người trả lời khảo sát nói rằng họ không có ý định dùng thêm bất kỳ ngôn ngữ mới nào trong 12 tháng sắp tới.
Nếu so sánh với kết quả của năm 2018 với 2019 với 2020, ta cũng sẽ thấy rằng việc sử dụng Typescript cũng tăng lên liên tục.
-
Các bộ công cụ – Tool:
Report này làm rõ một vấn đề rằng: các team sử dụng rất nhiều & đa dạng các tool, đặc biệt là khi nhắc tới việc testing và quản lý dự án. Bạn có thể tìm thấy bài phân tích chi tiết tại đây: Tình trạng ngành lập trình năm 2022
4. Tuyển dụng và giữ chân nhân tài
Tuyển dụng và giữ chân lập trình viên là phần quan trọng của việc quản lý team. Bạn có tò mò về cách các công ty công nghệ tuyển và giữ nhân tài của họ?
Từ năm 2018, phương pháp ứng tuyển hiệu quả nhất vẫn chưa thay đổi. Giới thiệu ứng viên (Employee referal) và tuyển dụng nội bộ (in-house recruiter) là hai phương pháp tốt nhất để tuyển dụng người tài.
Qua report ta cho thấy, có 4 mảng quan trọng các công ty công nghệ cần tập trung khi tuyển dụng các ứng viên sáng giá: sẵn sàng học hỏi, kinh nghiệm làm việc và kiểm tra đánh giá kỹ năng kỹ thuật cũng như phù hợp với văn hóa của họ.
Điểm nổi bật nhất cần nêu ở đây, đó là trong năm 2022, các công ty chú ý hơn về các kỹ năng mềm.
Hiện nay rất ít công ty nhìn vào bằng cấp hay chứng chỉ, nó đã trở thành 1 thứ có thể ghi nhận sau. Điều quan trọng nhất là sẵn sàng học hỏi và điều này hoàn toàn hợp lý bởi vì ta sống trong 1 thế giới thay đổi nhanh chóng và con người nên có khả năng thích nghi với hoàn cảnh mới cũng như tìm cơ hội mới để thực hiện công việc được tốt hơn.
Đối với chiến lược thu hút ứng viên, hãy nhìn vào biểu đồ này để tìm hiểu đâu là những yếu tố chính để các công ty dùng để thu hút các nhân tài mới:
Từ đây mới thấy, việc có một team/ đồng nghiệp tốt và công việc có tính thử thách là những cách phổ biến nhất để thu hút các lập trình viên mới.
-
Outsource phần mềm – Software Outsourcing
Vì giải quyết các vấn đề năng lực là 1 trong những thử thách lớn nhất bên cạnh việc tuyển dụng nhân tài, outsourcing có thể là cách “chữa lỗi” nhanh chóng. Hãy nhìn xem các công ty nghĩ gì về ý tưởng của việc outsourcing:
Có thể thấy hầu hết những người outsource các dịch vụ lập trình vẫn giữ thái độ hài lòng phần nào. Đây có thể là 1 giải pháp tốt cho vấn đề năng lực.
-
Quản lý hiệu suất
Trong phần này của report, ta sẽ nhìn vào cách các team lập trình viên đo lường hiệu suất và những nguồn gốc những vấn đề của họ. Đoạn này còn tiết lộ cách mà các team lập trình viên đảm bảo chất lượng code cho công việc.
Nguồn: Tình trạng ngành lập trình
Các yếu tố quan trọng nhất cho những nhà quản lý dự án đo lường được hiệu suất của các lập trình viên chính là qua phần mềm làm việc – wokring software, hoàn tất các task – completed tasks và độ dễ đọc của code – code readability chính là những nguyên nhân quan trọng nhất cho các nhà quản lý dự án để đo lường năng suất các lập trình viên.
Và nguyên nhân thất bại số 1 đối với hầu hết các nhà quản lý dự án chính là những kỳ vọng không thực tế – unrealistic expatations, theo sau là sự ước tính – estimation và sự thiếu hụt các sản phẩm được xác định rõ ràng – lack of clearly defined deliverables.
Kết luận về Tình hình ngành lập trình toàn cầu
Bài viết này chỉ đi kèm 1 mảnh xén nhỏ từ tất cả các dữ liệu mà chúng tôi thu thập được từ bản report. Nếu bạn muốn xem bản report đầy đủ, chỉ cần theo dõi đường link này và download nó. Cứ tự nhiên chia sẻ bài đăng này hay bản report với bất kỳ ai mà bạn nghĩ cũng sẽ thích thú quan tâm tới nó. Nhưng đừng quên rằng dữ liệu khảo sát của thời điểm nào thì chỉ ứng dụng tốt nhất cho thời điểm đó mà thôi.
1 lần nữa, xin cảm hơn Codingsans vì sáng kiến tuyệt vời này cũng như đã thực hiện nó cùng với clutch, gitkraken, Cooperpress, Level-up, Clockwise, VisionX, Code Climate, LingoHub, Usersnap.
TopDev via Apiumhub