中國程序員現狀:年薪與 Python 熱潮揭秘

  • 精通哪門編程語言最能“漲薪”?
  • 層出不窮的 AI 輔助編碼,究竟給程序員帶來了多大的實際價值?
  • 從全球視野來看,中國開發者的薪資情況如何?

近日,軟件工具開發公司 JetBrains 最新發布了《2024 開發者生態系統現狀 報告》(https://www.jetbrains.com/lp/devecosystem-2024/),基於對全球 23,262 名開發者的調研數據,深入剖析了編程語言趨勢、薪資分布以及 AI 工具的使用情況。

以下是報告中的一些亮點:

  • 全球近半數程序員使用 Python
  • 薪酬最高的編程語言是 Scala,其次為 Go、Kotlin、C 和 C++
  • 69% 的開發者曾在編碼中使用 ChatGPT,其中 49% 的人經常依賴 AI 工具完成開發任務;
  • 32% 的受訪者認為 AI 工具每周可節省 1-2 小時工作時間;
  • 全球開發者中位數薪資排名:美國開發者以 144,000 美元(約 105 萬元)穩居榜首,中國開發者以 31,200 美元(約 23 萬元)排名第 14 位。

從技術到收入,報告為開發者的職業選擇提供了重要參考。哪個技術趨勢最值得關注?一起來看看吧!

程序員的日常

在 IT 領域,不乏有很多領導喜歡用代碼行數來衡量技術人的工作量,但這種方式往往掩蓋了一些實際情況。

斯坦福大學不久前做過一項研究,揭示了一個令人震驚的現象:在大型科技公司里,有一部分工程師的工作量極低,每周實際工作時長僅約 5 小時,每月甚至只提交兩次代碼更改,年薪卻高達 20 萬到 30 萬美元。這類人被稱為“幽靈工程師”。該研究數據顯示,這類幾乎沒有實質性貢獻的工程師佔比約 9.5%,導致科技行業每年損失高達 900 億美元。

但事實是否真的如此?程序員不寫代碼等於沒產出?他們每天中到底有多少是用來寫代碼的?

根據 JetBrains 最新調查報告顯示,現實只有 19% 的程序員真正能把 71%-80% 的工作時間直接用在寫代碼上,花費超過 90% 的時間專註寫代碼的開發者僅佔比 6%。

不過,寫代碼終究是程序員的核心工作,65% 的受訪者稱他們會將一半的工作時間花在編碼任務上,但是也有不少“非編程”工作會佔用他們大量的時間。

譬如,開會、溝通、文檔整理等任務充斥在程序員的日常工作中。33% 的開發者透露,自己日常要花費 10%-20% 的時間在會議、工作相關的聊天和電子郵件上。

中國開發者平均薪資位居全球第 14 位,中位數為 23 萬元

本次調查中,20% 的受訪者來自中國,其他主要來源國家/地區包括美國、印度日本德國等。

在中國開發者群體中,18-29 歲的年輕開發者佔比 63%。

放眼全球程序員薪酬,美國程序員以高達 144K 美元(約 105 萬元)的中位數年薪遙遙領先。中國程序員的薪酬排名第 14 位,中位數薪酬為 31.2K 美元(約 23 萬元)。這表明儘管中國在科技和互聯網領域迅速發展,並且對於編程人才的需求持續增長,但與全球頂尖市場相比,中國的薪酬待遇仍有較大的提升空間。

值得注意的是,這裡的薪酬數據是中位數,具體薪資會根據個人的經驗、技能、公司規模和地區等因素有所不同。

15% 受訪者的薪酬主要集中在 24k-36k 美元範圍內。

Scala 語言薪酬最高、全球一半的程序員在用 Python

在工具維度,JavaScript 是開發者最常用的編程語言,佔比 61%,和去年持平。對此,JetBrains 官方分析道,“一旦開發人員選擇了一個生態系統,他們往往就不會計劃採用任何其他技術或工具集。通常情況下,開發者傾向於選擇他們喜歡的東西並堅持他們所了解的東西”。

此外,其他最受開發者歡迎的編程語言 Top 5 分別為 Python、HTML/CSSSQLJava

不過值得注意的是,JavaScript 雖然擁有龐大的開發者社區和豐富的資源而備受開發者喜愛,但另一方面,它也正面臨強大的競爭。JetBrains 稱,JavaScript 用戶的百分比沒有變化,然而將其作為主要語言的用戶比例下降了 2 個百分點。如今 JavaScript 的超集 TypeScript 正在迅速獲得關注,它的採用率已從 2017 年的 12% 飆升至 2024 年的 35% 。

與 JavaScript 相比,TypeScript 在開發體驗上提供了顯著的改進。它不僅能在編譯階段捕捉錯誤,提前發現潛在問題,從而提高代碼質量,還簡化了長期維護的工作。TypeScript 增強了重構的安全性和效率,減少了出錯的可能性,並且原生支持 ES6 模塊系統,使得代碼組織更加清晰。

那麼,TypeScript 會取代 JavaScript 嗎?

答案是“不”!

JetBrains 官方認為,JavaScript 是軟件開發行業中最流行和最基本的技術之一,可以肯定地說,它不會很快消失。雖然 TypeScript 因其增強的功能和優勢而越來越受歡迎,但 JavaScript 的廣泛採用、簡單性和強大的生態系統確保它仍然是 Web 開發的重要組成部分。TypeScript 不會取代 JavaScript,而是更有可能繼續與 JavaScript 共存,為開發人員提供基於其項目需求和偏好的選擇。

Python 是另一個值得開發者關注的編程語言。數據顯示,人工智能和機器學習最常用的編程語言是 Python。作為第二大最受歡迎的編程語言,Python 擁有豐富的庫(例如 TensorFlowKerasPyTorch 和 scikit-learn)和強大的社區支持。

對此,JetBrains 分析道,“七年前,我們第一次進行調查時,Python 的份額為 32%(幾乎與 PHP 的 30% 持平),而現在,全球超過一半的程序員都在使用 Python。”

論及開發者是否會放棄當前所使用的語言而用其他編程語言時,Go 和 Rust 成為眾人關注的焦點。這兩種語言在構建時都考慮到了性能和並發性,並提供了編譯器安全保證以幫助減少錯誤,正因此,成為不少開發者的備選學習語言。

對於過去幾年間,美國政府呼籲開發者應該在新程序開發時放棄使用 C/C++ 語言而選用內存安全語言的爭議,JetBrains 結合開發者的選擇,分析了當前 Rust 的最新進展。整體來看,美國政府的呼籲一定程度上促進了業界對 Rust 的採用。

數據顯示,在今年最受歡迎的語言中,唯一創下使用率新高的語言便是 Rust。Rust 立志以其嚴格的安全性和內存所有權機製取代 C++,其用戶群在過去五年中穩步增長。根據 JetBrains 的數據,六分之一的 Go 用戶正在考慮採用 Rust。

最後,再來看看薪水最高的編程語言究竟都有誰?

調查顯示,它們分別是 Scala、Go、Kotlin、C++、Rust、C、Shell、Java 和 Python。但是,薪水並不僅僅由語言決定。工作角色很重要!例如,Shell 腳本屬於薪水最高的類別,因為它被 DevOps 工程師大量使用,而他們的薪水通常更高。

ChatGPT 是最受歡迎的 AI 輔助編碼工具

毋庸置疑,AI 工具在開發人員社區中的應用取得了顯著進展。根據最新數據,高達 69% 的開發人員已經嘗試了 ChatGPT,其中 49% 的人將其頻繁應用於編碼及其它開發相關任務。緊隨其後的是 GitHub Copilot,這款備受歡迎的開發者 AI 助手,已被 40% 的開發人員試用,且 26% 的受訪者表示經常使用它來輔助日常工作。

通過 JetBrains 提供的原始數據(未加權)來看,Anthropic Claude 雖然只有 2.7% 的受訪者使用,但採用率卻高達 52.4%,顯示出良好的滿意度。按採用率排名,接下來是 Codeium,採用率為 48.3%,然後是 Google Gemini/Bard,採用率為 37.6%,JetBrains AI Assistant 的採用率為 37.2%。

這些數字不僅反映出 AI 工具在編程領域的普及程度,也揭示了它們對提高生產力和簡化複雜任務的重要作用。

日常使用中,29% 的公司允許在所有項目中使用這些第三方基於雲的 AI 工具(如 ChatGPT、GitHub Copilot 或 Google Gemini)執行編碼和開發相關任務。

整體來看,大多數公司(近 80%)要麼不同程度地允許使用第三方 AI 工具,要麼沒有制定政策,只有 11% 的公司完全禁止在所有項目中使用,這意味着很多人對“AI 威脅論”的恐懼正在逐漸消退。

在使用了 AI 輔助編碼工具之後,67% 的受訪者表示,搜索信息所需的時間顯著減少。同時,58% 的人認為編碼和開發速度更快,以及 57% 的人指出 AI 工具能更快地完成重複任務,並且同樣比例的人認為這提高了整體生產力。

多數受訪者覺得,AI 工具在提高效率、減少重複勞動和提升開發體驗方面表現尤為突出。

超過三成的開發者認為,藉助 AI 工具至少每周可以節省 1-2 小時時間。

在這次調查中,JetBrains 還特別設置了“您是否使用虛擬現實 (VR) 設備進行編碼?”一問,要知道在今年 2 月蘋果正式發售 Vision Pro 頭顯之後,有不少開發者嘗試在這類設備裡面編碼。當時,有開發者反饋,“某種程度上來說,我感覺就像站在一個大機房裡,這與傳統的桌面體驗完全不同”,但是因為設備太重,也有不少人吐槽稱,這樣看代碼太累了。

無論如何,這都是一種新型的編碼方式。

時下,這一方式是否已經普及?數據顯示,並沒有。

49% 的受訪者雖然想要嘗試,但是還沒有開始使用。

調查中,只有 8% 的開發人員嘗試過使用虛擬現實 (VR) 進行編碼。阻礙開發人員採用 VR 進行編碼的最常見障礙包括設備成本高昂以及對其益處的不確定性。此外,18% 的開發人員會如上文所提及的,因長時間使用 VR 而感到身體不適或有健康問題。

其他值得關注的技術及趨勢

桌面開發比移動開發更為普遍

雖然有些人認為移動開發比桌面開發更為普遍,但 JetBrains 的數據顯示,桌面應用程序開發比移動應用程序開發高出 6 個百分點。這顛覆了“移動應用程序已超越桌面應用程序”的觀點,證明桌面應用程序對許多開發人員來說仍然是必不可少的。

根據調查,58% 的開發人員在瀏覽器平台上運行代碼。桌面緊隨其後,佔比 53%,這表明尤其是對於需要更多功能或專用工具的任務而言,桌面更為重要。移動設備占 30%,也呈現增長趨勢,但尚未趕上桌面的使用率。

區塊鏈在過去有段時間裡很火,但是,據最新的數據顯示,這項技術實際上並沒有獲得太大的吸引力——只有 3% 的開發人員關注它。相較之下,18% 的開發人員參與了與人工智能的整合工作,這表明人工智能正在穩步滲透到開發的軟件中。

開源數據庫佔主流

近年來,數據庫的受歡迎程度一直保持相當穩定。開源數據庫(MySQLPostgreSQLMongoDBSQLiteRedis)佔據了開發人員使用的存儲選項的主導地位。

在雲服務方面,Amazon Web Service 排名第一,佔比 46%。阿里雲並列第三,有 11% 的受訪者使用,相較去年有所提升。


同時,49% 的開發者表示在本地使用 Docker,這表明 Docker 已成為開發環境中的主流工具。此外,25%的開發者表示不使用任何虛擬化或容器技術,這意味着仍有一部分開發者依賴傳統的開發方式。

軟件開發者的就業市場趨勢

過去兩年間,隨着國際市場經濟環境的變化,「裁員」、「降本增效」、「開源節流」成為科技行業熱議的話題。對於身處在這一領域的開發者而言,究竟受到了怎樣的影響?

調查數據顯示,一半的受訪者稱所在的公司沒有裁員,這表明目前整個行業似乎相對穩定。然而,14% 的企業經歷了大規模裁員,三分之一的企業面臨小規模裁員。

對於個人而言,超過 50% 的受訪者沒有直接受到裁員的影響,但有 30% 的人受到了間接影響。16% 的人失去了工作。

在這一趨勢下,大多數開發人員覺得自己的工作安全可靠。只有 11% 的人聲稱自己在某種程度上感到不安全。

日常工作中,近一半的員工覺得自己的工作量與期望值相比有些多。41% 的人稱和自己預期一樣。

根據這份報告,技術人員在工作中面臨的最大挑戰主要集中在三個方面:38%的受訪者認為了解用戶需求最具挑戰性,這反映了在快速變化的市場需求中,準確捕捉用戶需求的難度;34%的人認為與其他工作角色的溝通是主要挑戰,這表明跨部門協作和有效溝通在項目成功中的重要性。32%的人表示理解他人的代碼也很具挑戰性,這凸顯了代碼可讀性和團隊協作的重要性。

這些數據表明,除了技術技能外,軟技能如溝通能力和理解用戶需求的能力在現代軟件開發中同樣至關重要。

以上便是《2024 開發者生態系統現狀》的主要內容,更多完整報告內容可查看:https://www.jetbrains.com/lp/devecosystem-2024/