Báo cáo Khảo sát Lập trình viên 2019 - Stack Overflow

Báo cáo khảo sát Lập trình viên hàng năm của Stack Overflow vừa hoàn thành, là cuộc khảo sát lớn nhất và toàn diện nhất về Lập trình viên trên toàn thế giới.

Mỗi năm, Stack Overflow thực hiện một cuộc khảo sát bao gồm tất cả mọi thứ, từ các công nghệ mà Lập trình viên yêu thích đến các sở thích, thực tế công việc của họ.

Năm nay đánh dấu năm thứ 9 Stack Overflow công bố kết quả Khảo sát Lập trình viên hàng năm và gần 90.000 lập trình viên đã thực hiện cuộc khảo sát dài khoảng 20 phút mà họ công bố vào đầu năm nay.

Mặc dù khảo sát của Stack Overflow có phạm vi tiếp cận rộng và khả năng thông báo kết luận có giá trị, nhưng họ cũng thừa nhận rằng kết quả của khảo sát không thể đại diện cho tất cả mọi người trong cộng đồng Lập trình viên.

Dưới đây là một vài trong số những kết quả khảo sát Lập trình viên hàng đầu của năm nay.

  • Python, ngôn ngữ lập trình chính phát triển nhanh nhất, đã tăng thứ hạng các ngôn ngữ lập trình trong khảo sát của chúng tôi một lần nữa, vượt qua Java năm nay và trở thành ngôn ngữ được yêu thích thứ hai (sau Rust).
  • Hơn 50% số người được hỏi đã viết dòng mã đầu tiên của họ khi họ mười sáu tuổi, mặc dù trải nghiệm này thay đổi theo quốc gia và theo giới tính.
  • DevOps Specialists và Engineer, site reliability là một trong những nhà phát triển được trả lương cao nhất, có kinh nghiệm nhất hài lòng nhất với công việc của họ và đang tìm kiếm công việc mới ở mức thấp nhất.
  • Trong số các quốc gia hàng đầu trong cuộc khảo sát của Stack Oveflow, Trung Quốc có những lập trình viên lạc quan nhất, tin rằng những người sinh ra ngày nay sẽ có cuộc sống tốt hơn cha mẹ của họ. Các nhà phát triển ở các nước Tây Âu như Pháp và Đức là một trong số ít lạc quan nhất về tương lai.
  • Khi nghĩ về vấn đề làm hạn chế năng suất, các lập trình viên khác nhau trả lời các thách thức khác nhau. Nam có nhiều khả năng nói rằng được giao nhiệm vụ cho công việc không phải lập trình là một vấn đề đối với họ, trong khi những một số ít người nói rằng môi trường làm việc độc hại là một vấn đề.
  • Stack Overflow cũng thử yêu cầu người trả lời suy nghĩ về lần cuối cùng họ giải quyết vấn đề lập trình có và không có trang web ghé Stack Overflow. Dữ liệu chỉ ra rằng Stack Overflow tiết kiệm cho nhà phát triển 30 đến 90 phút thời gian mỗi tuần.​

Đó là những điểm chính trong Báo cáo Khảo sát Lập trình viên 2019, bây giờ chúng ta sẽ đi tới những phần cụ thể khác.

1. Những Lập trình viên tham gia báo cáo khảo sát họ ở đâu?

Địa điểm của những người tham gia báo cáo

Mỗi tháng, khoảng 50 triệu người truy cập Stack Overflow để tìm hiểu, chia sẻ và xây dựng sự nghiệp lập trình của họ.

Họ ước tính rằng 21 triệu người này là những lập trình viên chuyên nghiệp và sinh viên cấp đại học.

Phần lớn những người tham gia khảo sát của Stack Overflow năm nay là những người nói rằng họ là những lập trình viên chuyên nghiệp hoặc đôi khi viết mã như một phần công việc của họ, hoặc là những sinh viên chuẩn bị cho một sự nghiệp như vậy.

Khoảng 4% số người được hỏi mã như một sở thích nhưng không phải là một nghề và chỉ dưới 2% số người được hỏi là nhà phát triển chuyên nghiệp nhưng không còn nữa.

2. Các kiểu Lập trình viên đã tham gia làm khảo sát

Các kiểu lập trình viên tham gia khảo sát

Khoảng 50% số người được hỏi xác định là Lập trình viên Fullstack (Fullstack Developer) và khoảng 17% tự coi mình là Mobile Developer.

Số lượng xác định loại lập trình viên trung bình cho mỗi người trả lời trong năm nay là 3 và các cặp phổ biến nhất là sự kết hợp của nhà Lập trình viên Back-End, Lập trình viên Front-End và Lập trình viên Full-stack.

Các cặp có mối tương quan cao bao gồm:

  • Database administrator và System Administrator
  • DevOps specialist và Site Reliability Engineer
  • Academic Researcher và Scientist
  • Designer và Front-end Developer

3. Lập trình viên có đóng góp cho cộng đồng mã nguồn mở

Đào tạo cung cấp lập trình viên chất lượng cao

Khoảng 65% các lập trình viên chuyên nghiệp trên Stack Overflow đóng góp cho các dự án nguồn mở mỗi năm một lần trở lên.

Sự tham gia vào nguồn mở thay đổi theo ngôn ngữ. Các lập trình viên làm việc với Rust, WebAssugging và Elixir đóng góp cho nguồn mở ở mức cao nhất.

Trong khi các lập trình viên làm việc với VBA, C và SQL làm như vậy với khoảng một nửa tỷ lệ đó.

4. Lập trình có phải là sở thích của Lập trình viên?

Lập trình có phải là sở thích của lập trình viên?

Nhiều Lập trình viên làm việc với code ngoài công việc chính của họ. Khoảng 80% số người được hỏi của chúng tôi nói rằng họ viết mã như một sở thích.

Các trách nhiệm khác ngoài lập trình có thể làm hạn chế các Lập trình viên viết code như một sở thích.

Các lập trình viên nói rằng họ có con hoặc các trách nhiệm chăm sóc khác cũng làm giảm tỷ lệ này. Những người được hỏi là phụ nữ cũng ít người coi viết code như là một sở thích.

5. Kinh nghiệm Lập trình

Số năm kinh nghiệm tính từ lúc học lập trình

Số năm kinh nghiệm từ lúc học lập trình

Có rất nhiều cấp độ kinh nghiệm giữa các lập trình viên và khoảng 45% Lập trình viên chuyên nghiệp trên Stack Overflow đã học cách lập trình nhỏ hơn 10 năm trước.

Số năm kinh nghiệm tính từ lúc lập trình chuyên nghiệp

Số năm kinh nghiệm từ lúc học lập trình chuyên nghiệp

Hơn 40% số người được hỏi có ít hơn 5 năm kinh nghiệm lập trình chuyên nghiệp.

Các lập trình viên làm việc với các ngôn ngữ như VBA, F và Clojure có nhiều năm kinh nghiệm lập trình chuyên nghiệp, trong khi các nhà phát triển làm việc với các ngôn ngữ như Python, PHP và Kotlin thì ít nhất.

Số năm tính từ lúc viết dòng code đầu tiên

Số năm tính từ lúc viết dòng code đầu tiên

Nhìn chung, hơn một nửa số người được hỏi đã viết dòng code đầu tiên khi họ mười sáu tuổi, nhưng kinh nghiệm rất khác nhau.

Có sự khác biệt hai năm trở lên trong độ tuổi trung bình đầu tiên từ các quốc gia như Úc và Vương quốc Anh so với Ấn Độ và Brazil.

Nếu chúng ta kiểm soát tuổi lập trình viên ngày nay, chúng ta sẽ thấy sự chênh lệch thậm chí còn kịch tính hơn giữa Ấn Độ (nơi các lập trình viên ngày nay bắt đầu lập trình muộn hơn) và Vương quốc Anh (nơi các nhà phát triển ngày nay bắt đầu lập trình sớm hơn).

Báo cáo cũng cho thấy sự khác biệt với giới tính, với phụ nữ dòng code đầu tiên của họ muộn hơn nam giới và người trả lời không có trả lời nào rằng phụ nữ viết dòng code đầu tiên sớm hơn nam giới.

6. Lập trình viên và Giáo dục

Có bao nhiêu Lập trình viên còn đang là Sinh viên

Lập trình viên đang là sinh viên

Khoảng một phần tư số người được hỏi đang học đại học hoặc cao đẳng toàn thời gian hoặc bán thời gian.

Trình độ học vấn của Lập trình viên

Trên toàn thế giới, khoảng 3/4 số người trả lời lập trình viên chuyên nghiệp có học vấn tương đương bằng cử nhân hoặc cao hơn, tương tự với những gì chúng ta đã biết trong những năm trước.

Tuy nhiên, số lượng Lập trình viên chuyên nghiệp mà chưa hoàn thành bằng cấp nào cũng không phải là hiếm.

Lập trình viên học những ngành nào

Trong số các lập trình viên chuyên nghiệp đã học ở cấp đại học, hơn 60% cho biết họ học chuyên ngành khoa học máy tính, kỹ thuật máy tính hoặc kỹ thuật phần mềm.

Tỷ lệ này có phần cao hơn ở những sinh viên đang theo học, và tỷ lệ người được hỏi học các ngành kỹ thuật khác như kỹ thuật điện và cơ khí thấp hơn ở những sinh viên hiện tại so với các chuyên gia.

Các hình thức giáo dục khác mà Lập trình viên tham gia

Các Lập trình viên là những người học suốt đời.

Gần 90% tất cả các lập trình viên nói rằng họ đã tự học một ngôn ngữ, Framework hoặc công cụ mới bên ngoài chương trình học chính thức của họ.

Trong số các lập trình viên chuyên nghiệp, khoảng 60% cho biết họ đã tham gia một khóa học trực tuyến như trả phí có chứng chỉ uy tín (MOOC) (tăng đáng kể so với năm ngoái) và khoảng 1/4 lập trình viên được hỏi đã tham gia vào một cuộc thi hackathon.

7. Thông tin nhân khẩu học của các Lập trình viên đã tham gia khảo sát.

Chủng tộc / Sắc tộc

Stack Overflow đã hỏi những người được hỏi về bản sắc chủng tộc / sắc tộc của họ và xem bằng chứng cho thấy những người da màu tiếp tục bị đánh giá thấp trong số các lập trình viên, đặc biệt là trong số các lập trình viên chuyên nghiệp.

Tỷ lệ Lập trình viên người da màu ở là sinh viên cao hơn so với các lập trình viên chuyên nghiệp. Chúng ta đã thấy sự cải thiện gia tăng trong lĩnh vực này qua từng năm.

Tại Mỹ năm nay, 22% số người được hỏi là người da màu (có nghĩa là họ đã chọn một hoặc nhiều tùy chọn không phải màu trắng cho câu hỏi này); năm ngoái 19% số người được hỏi ở Mỹ là người da màu.

Giống như đại diện về giới, sự thay đổi dần dần này rất đáng khích lệ, nhưng mức độ tham gia chung cho thấy chúng ta vẫn còn việc phải làm, ngay cả trên Stack Overflow và khi ngành công nghiệp công nghệ đang càng ngày mở rộng hơn.

Lập trình viên là Nữ

Những người được hỏi về bản sắc giới tính trả lời có khoảng 90% là nam giới.

Ở các khu vực bao gồm Hoa Kỳ, Ấn Độ và Vương quốc Anh, phụ nữ được đại diện ở cấp độ cao hơn trong số các sinh viên so với các lập trình viên chuyên nghiệp. Năm nay, 11% số người tham gia khảo sát tại Mỹ là phụ nữ, tăng từ 9% trong khảo sát năm 2018.

Điều này thể hiện sự cải thiện gia tăng trong lĩnh vực này, nhưng tỷ lệ thấp tiếp tục cho các vấn đề liên quan đến ngành công nghệ nói chung và Stack Overflow nói riêng.

Năm nay, 1,2% số người được hỏi được xác định là người chuyển giới, khoảng gấp đôi so với năm ngoái.

Số năm kinh nghiệm Lập trình theo giới tính Nam

Số năm kinh nghiệm Lập trình theo giới tính nữ

Nghiên cứu cho thấy, phụ nữ rời bỏ công việc trong ngành công nghệ với tỷ lệ cao hơn nam giới.

Trong số những người được hỏi của chúng tôi, cả ở Mỹ và trên thế giới, phụ nữ có 3 năm kinh nghiệm hoặc ít hơn cao gần gấp đôi so với nam giới.

Các công ty đã quan tâm đến việc xây dựng lực lượng phát triển đa dạng, phản ánh xã hội nhiều hơn, nên tập trung vào việc giữ chân các nhà phát triển cấp cao của họ từ các nhóm thiếu chuyên môn, cùng với việc giữ chân Junior Developer.

Tuổi của Lập trình viên

Khoảng 3/4 các lập trình viên chuyên nghiệp đã thực hiện khảo sát của Stack Overflow dưới 35 tuổi.

Tuổi của Lập trình viên theo Quốc gia

Các Lập trình viên trên Stack Overflow già hơn với nhiều kinh nghiệm hơn ở Úc, Tây Âu và Bắc Mỹ và trẻ hơn với ít kinh nghiệm hơn ở các khu vực như Ấn Độ và Đông Âu.

Mối quan hệ năng lực và kinh nghiệm theo Giới tính Lập trình viên

Các lập trình viên mới ít có khả năng tự đánh giá bản thân ở mức trung bình cho trải nghiệm của họ và hiệu ứng này không bị san phẳng cho đến khoảng 10 năm kinh nghiệm.

Chúng tôi thấy bằng chứng ở đây trong số các nhà phát triển cơ sở nhất cho hội chứng kẻ mạo danh, mô hình tự nghi ngờ, bất an và sợ bị phơi bày là một sự gian lận. Trong số những người được hỏi của chúng tôi, đàn ông phát triển tự tin nhanh hơn nhiều so với người thiểu số giới.

8. Lập trình viên và cuộc sống

Lập trình viên là IT support, cài win, sửa điều hòa, sửa lò vi sóng cho gia đình.

Lập trình viên sử dụng Mạng xã hội nào.

Reddit và YouTube là phổ biến nhất trong giới lập trình viên.

Sở thích của các nhà phát triển không ảnh hưởng bởi các nền tảng truyền thông xã hội phổ biến nhất trên thế giới, nơi Facebook đứng đầu và Reddit thậm chí không vượt qua top 10. (Reddit có khoảng 330 triệu người dùng hoạt động so với Facebook Lít 2,32 tỷ người dùng hàng tháng.)

Khi chúng ta nhìn vào Mỹ tình hình lại có một chút khác biệt. Twitter và Facebook được xếp hạng cao hơn. Lưu ý rằng kết quả của Mỹ có trọng số theo giới tính thể hiện một số khác biệt thú vị so với kết quả không có trọng số.

Instagram thậm chí còn đạt được thứ hạng khá tốt.

Người nào sẽ có ảnh hưởng nhất trong công nghệ năm nay?

Bên cạnh các CEO của các công ty bao gồm Tesla, Amazon, Microsoft, Google, Facebook và Apple, những người được hỏi đã đề cập đến các nhà phát triển xây dựng và duy trì React.js và Vue.js (các Web Framework được yêu thích nhất trong năm nay), cùng với các nhà lãnh đạo từ thế giới Linux và các nhà lãnh đạo khác lĩnh vực công nghệ.

Một vài nhà lãnh đạo thế giới đã nhận được đề cập từ những người được hỏi, cùng với một số lượng khá lớn những người trả lời khiêm tốn đề cử … chính họ!

9. Công nghệ nổi bật trong giới Lập trình viên

Ngôn ngữ lập trình, Script, Markup Languages phổ biến nhất

Trong năm thứ bảy liên tiếp, JavaScript là ngôn ngữ lập trình được sử dụng phổ biến nhất, nhưng Python đã tăng thứ hạng một lần nữa.

Năm nay, Python chỉ vượt qua Java trong bảng xếp hạng tổng thể, giống như nó đã vượt qua C năm ngoái và PHP vào năm ngoái.

=> Python là ngôn ngữ lập trình lớn phát triển nhanh nhất hiện nay.

Web Framework phổ biến nhất

Năm nay, Stack Overflow đã hỏi về các Web Framework riêng biệt với các Framework và thư viện khác.

jQuery được sử dụng rộng rãi nhất trong số các Web Framework. Và năm nay, nhiều lập trình viên nói rằng họ sử dụng React.js nhiều hơn Angular.

Framework, tools và thư viện khác phổ biến

Bạn có thể thấy Node.js được sử dụng phổ biến nhất.

Nhiều lập trình viên cho biết họ sử dụng .NET nhiều hơn .NET Core và Deep Learning Framework TensorFlow phổ biến hơn nhiều lần so với Torch / PyTorch.

Nền tảng phổ biến nhất trong thế giới Lập trình viên

Linux và Windows là những nền tảng phổ biến nhất mà người trả lời của chúng tôi nói rằng họ đã thực hiện công việc phát triển trong năm nay.

Năm nay các công nghệ như Docker lần đầu tiên được hỏi và số liệu cũng cho thấy Docker là nền tảng được sử dụng rộng rãi thứ ba.

Môi trường phát triển được yêu thích nhất

Visual Studio Code thống trị trong số các công cụ mã hóa dành cho Lập trình viên năm nay.

Có sự khác biệt trong lựa chọn công cụ theo loại và vai trò của các lập trình viên, nhưng Visual Studio Code là lựa chọn hàng đầu trên bảng tổng sắp.

Các lập trình viên viết mã cho ứng dụng di động có nhiều khả năng chọn Android Studio và Xcode.

Một lựa chọn phổ biến cho DevOps và SRE là Vim và các Data scientists có nhiều khả năng làm việc trong IPython / Jupyter, PyCharm và RStudio

Các Doanh nghiệp / Tổ chức sử dụng công nghệ Blockchain như thế nào?

Hầu hết những người được hỏi trong cuộc khảo sát của Stack Overflow nói rằng các tổ chức của họ không sử dụng hoặc triển khai công nghệ blockchain và việc sử dụng phổ biến nhất được báo cáo lại không phải về tiền tệ.

Các lập trình viên ở Ấn Độ thường nói rằng các tổ chức của họ đang sử dụng công nghệ blockchain.

Công nghệ được kết nối như thế nào

Các công nghệ tập hợp lại thành các Nhóm hệ sinh thái liên quan có xu hướng được sử dụng bởi cùng các lập trình viên. Biểu đồ mạng này thể hiện điều này bằng cách chỉ ra công nghệ nào có mối tương quan cao nhất với nhau.

Chúng tôi thấy một cụm lớn ở bên trái để phát triển web (với JavaScript, HTML / CSS, TypeScript và React.js) được kết nối qua SQL với một cho các công nghệ của Microsoft (với C, Visual Studio và .NET Core).

Dọc phía dưới bên trái, chúng ta thấy một chòm sao di động kết nối Java, Kotlin, Android và SQLite với iOS và Xcode.

Năm nay một nhóm các công nghệ hoạt động với Docker, AWS và PostgreSQL được kết nối với mạng hệ sinh thái Python thông qua Linux. Các cụm tương quan nhỏ hơn khác bao gồm Scala / Spark / Hadoop, C / C ++ / hội và các công nghệ nhỏ hơn như IDE hoặc Framework cụ thể theo ngôn ngữ.

10. Công việc của Lập trình viên

Tình trạng công việc, nghề nghiệp của Lập trình viên

Hơn 90% lập trình viên chuyên nghiệp được đang có việc làm, ít nhất là bán thời gian.

Các lập trình viên cảm thấy thế nào về nghề nghiệp và công việc của họ?

Như chúng ta đã thấy trong những năm trước, các lập trình viên có xu hướng hài lòng với sự nghiệp hơn là với công việc hiện tại của họ.

Sự hài lòng của công việc là cao nhất đối với các nhà quản lý kỹ thuật và giám đốc điều hành kỹ thuật cao cấp, cùng với các chuyên gia của SRE và DevOps.

Các nhà phát triển với sự hài lòng công việc thấp nhất bao gồm các nhà nghiên cứu học thuật, giáo dục, nhà khoa học và nhà thiết kế.

Lập trình viên có cần trở thành nhà quản lý để kiếm tiền nhiều hơn?

Khi nói đến nhận thức của riêng họ về quản lý là một nghề nghiệp, một nửa số người được hỏi không nghĩ rằng họ nhất thiết phải chuyển sang quản lý để tiếp tục tăng lương.

Tình trạng tìm kiếm việc làm của Lập trình viên

Chỉ có 15% số người được hỏi đang tích cực tìm kiếm một công việc, nhưng gần 3/4 các nhà phát triển quan tâm về cơ hội việc làm mới.

Mức lương của Lập trình viên

Các nhà quản lý kỹ thuật, SRE, chuyên gia DevOps và các nhà khoa học / kỹ sư dữ liệu sở hữu mức lương cao nhất.

Thu nhập trung bình hàng đầu là nhất quán trên toàn cầu, từ Ấn Độ đến Châu Âu đến Mỹ.

Mức lương theo số năm kinh nghiệm của Lập trình viên

Dĩ nhiên, các lập trình viên có nhiều năm kinh nghiệm được trả nhiều tiền hơn.

Tuy nhiên, một số loại công việc lập trình được trả cao hơn ở cùng mức độ kinh nghiệm.

Các lập trình viên làm việc với dữ liệu (nhà khoa học và kỹ sư dữ liệu) và những người làm việc trong DevOps và độ tin cậy của trang web là những người có thu nhập cao vì mức độ kinh nghiệm của họ, trong khi các nhà nghiên cứu và giáo viên / giảng viên được trả ít hơn ở cấp độ kinh nghiệm của họ.

Mức lương theo ngôn ngữ chính sử dụng của Lập trình viên

Các lập trình viên sử dụng các ngôn ngữ xuất hiện phía trên dòng trong biểu đồ này, chẳng hạn như Clojure, Scala, Go, Rust và R, đang được trả nhiều hơn ngay cả khi họ có ít năm kinh nghiệm.

Tuy nhiên, các nhà phát triển sử dụng các ngôn ngữ bên dưới dòng, như PHP, hội và VBA, được trả ít hơn thậm chí nhiều năm kinh nghiệm.

Kích thước của các vòng tròn trong biểu đồ này thể hiện có bao nhiêu nhà phát triển đang sử dụng ngôn ngữ đó so với các vòng tròn khác.

Số giờ làm việc mỗi tuần của Lập trình viên

Lần đầu tiên trong năm nay, Stack Overflow đã hỏi các lập trình viên tham gia khảo sát làm việc bao nhiêu giờ mỗi tuần và 3/4 nói rằng họ làm việc ít hơn 45 giờ mỗi tuần.

Senior Executives, Product Managers và Engineering Managers thường làm việc nhiều giờ hơn, cũng như các lập trình viên ở Đông Âu, Ấn Độ và Mỹ.

Còn rất nhiều thông tin cụ thể của bản khảo sát Lập trình viên năm 2019 mà Stack Overflow đã công bố tại đây.

Nếu bạn chưa phải lập trình viên nhưng cảm thấy Lập trình viên rất thú vị và muốn tham gia thị trường này.

Nguồn: Techmaster