2017開發者技術和薪酬調查報告

2017 年 Stack Overflow 的開發者調查,超過 64000 人蔘與,結果很有意思,我們從下面幾點解讀一下:

  1. 不同型別的開發者佔比
  2. 開發者的年齡分佈
  3. 性別
  4. 學歷分佈
  5. 推薦的學習方式
  6. 程式語言排行
  7. 資料庫排名
  8. 最受歡迎的技術框架排行
  9. 開發者薪酬調查

1. 不同型別的開發者佔比

這項調查有 36125 人蔘與,結果如下圖所示:

Web 開發者佔比 72.6% 。在 2015 年,這個比例是 48.5% 。這種變化趨勢,印證了 Stack Overflow 創始人、Coding Horror 博主 Jeff Atwood 曾經說過的一句話:“所有程式設計都將是 Web 程式設計。” 這和國內前端大熱的現象也是吻合的。

在 Web 開發者中,又分三類:

  • 全棧 Web 開發者,佔比 63.7% ;
  • 後端 Web 開發者,佔比 24.4% ;
  • 單純的前端 Web 開發者,佔比 11.9% 。

排名第 2 的是桌面應用開發者,佔比 28.9% ,我在自由職業之前就做這塊。

排名第 3 的是移動開發者,佔比 23.0% 。

注意,有統計或數學背景的開發者佔比只有 11.3% ,如果你有這方面的背景,會很有競爭力哦,同時,這兩年人工智慧火熱,你介入進去會比較容易哦——現在機器學習開發者佔比只有 3.8% ,門檻就在數學。

2. 開發者的年齡分佈

很多人都覺得軟體開發是吃青春飯的,幹不過 34 歲,這是真的嗎?我們來看看調查結果:

這項調查是針對還在做開發的開發者的,有 40890 人蔘與。結果顯示,有 10 年以上經驗的開發者總佔比為 25.9% ,以 22 歲為基準年齡,換算一下:

  • 32 歲及以上的開發者佔比 25.9%
  • 34 歲及以上的開發者佔比 19.8%
  • 37 歲及以上的開發者佔比 14.6
  • 40歲及以上的開發者佔比 9.5% 。

這個調查裡大部分參與者是老外……國內的開發者年齡分佈可能不大一樣,但是,未來會慢慢趨同。

所以,如果你年齡稍大,也別擔心,5 個開發者中有一個是 34 歲以上的哇。

3. 開發者的性別分佈

有 35990 人蔘與這項調查,結果如下:

男性佔比 88.6% ,女性佔比 7.6% ,男女比例 12:1。

你看,假如你是男生,你所在的團隊,沒有女生是很正常的啦,要找女朋友,一定要和測試、產品、質量管理等部門的人多打交道,或者在大學裡搞定。

可能因為泰國開發者參與的緣故,變性開發者佔比 0.5% 。

奇怪的是,還有 1.2% 的開發者性別是 Other !難道是外星人?

4. 學歷分佈

此項調查有 34938 人給予了反饋,結果如下:

可以看到:

  • 學士學歷的開發者佔比 42.0%
  • 碩士學歷佔比 21.7%
  • 博士學歷佔比 2.5%

擁有學士及以上學歷的開發者總共佔比 76.5% ,中學及以下的 14.3% 。

這種對比,說明學歷很重要。而且,隨著教育水平的普及,未來受過高等教育的開發者佔比還會提升。

5. 開發者都是怎麼學習的

23568 人蔘與此項調查,結果:

通過線上課程學習的開發者佔比 64.7% 。

通過看書學習的佔比 49.9% 。

業餘時間上課學習的佔比 31.9% 。

通過給開源社群做貢獻來學習的,佔比 31.5% 。

來,看看你自己,有沒有學習?如果你一下班就看電視、打遊戲、逛大街、泡吧……趕緊醒醒,這樣子下去,你很快就遭遇職場中年危機啦!

6. 程式語言排行榜

PHP 是世界上最好的程式語言……這個梗可不一定對哇!

這項調查,收到 36625 份反饋,統計結果如下:

JavaScript 是最流行的語言,使用它的開發者佔比 62.5% !這個第一的位置,它佔據了 5 年啦。這是似乎印證了 Stack Overflow 創始人、Coding Horror 博主 Jeff Atwood 杜撰的“阿特伍德定律”:任何可以用JavaScript來寫的應用,最終都將用JavaScript來寫。

第 2 位 SQL ,第 3 位 Java ,也是好多年沒變過啦。

有趣的是,2017 年是最近 5 年來,使用 Python 的開發者佔比首次超過 PHP !這可能得益於兩點:

  1. 2017 年各種基於 Python 的人工智慧框架大熱
  2. 自動化運維大量使用 Python

7. 資料庫排名

29452 名開發者參與了此項調研,結果如下:

這是 Stack Overflow 第一次向開發者調研他們使用的資料庫技術,MySQL 和 SQL Server 是應用最廣泛的資料庫。

我一直覺得 SQL Server沒人用……打臉啦……

好玩的是, SQLite 居然排到了第三,這個結果應該是移動端開發大量使用 SQLite 導致的。

Redis 這個 Key-Value 記憶體資料庫排名第 7 ,做後端開發的小夥伴,應該對它很熟悉啦。

MongoDB 和 Node.js 很配,使用 Node.js 的小夥伴肯定很熟悉。

8. 最受歡迎的技術框架排行

有 20229 人蔘與最受歡迎的技術框架排行調查,結果如下:

Node.js 佔比 47.1% ,排第 1 位。

第 2 位是 AngularJS 。不知道明年 Vue.js 會不會上榜呢?

第 3 位是 .NET Core 。

再接下來是 React 。Facebook 改變了 React 的開原協議,估計明年會有變化啦。

像 Firebase 這麼棒的框架,居然國內無法在生產環境使用,真是遺憾呢……

9. 開發者薪酬調查

關於薪水的調研,收到了 12128 份回答,下圖顯示的平均年薪:

從世界範圍內的均值來看,使用 Clojure(一種執行在Java平臺上的 Lisp 方言)的開發者年薪最高,達到 72000 美元。摺合人民幣 467100 元,不到 50 萬,我接觸到的不少資深開發者年薪都超過這個數了。

老牌的 C 語言,使用它的開發者,平均年薪只有 51324 美元,摺合人民幣 332964 元,似乎也不是很高哇。

各位小夥伴,可以和這個調研結果比較一下,看看自己的年薪是不是超越了世界均值!如果想進一步提升,可以看看《程式設計師的成長課》這本書,據說月薪從 3 千到 5 萬的開發者都在看:《程式設計師的成長課》。