想了解基礎的中國軟件開發者用戶畫像嗎? 想了解一線城市開發者的薪酬嗎? 想了解大多數開發者偏愛的編程語言嗎? 想了解高薪開發者從事的都是什麼崗位嗎? 想了解最新的業界技術趨勢嗎? ……本文帶你一探究竟。
中國軟件開發者白皮書是基於一年一度的CSDN軟件開發者大調查數據分析結果形成的。 CSDN最早從2004年開始,對開發人員、開發技術以及開發工具、平台的狀況和發展趨勢等進行深入調研,它是各相關行業了解中國軟件開發者群體以及軟件開發服務領域市場的重要參考資料。
2017年中國軟件開發者大調查針對軟件開發技術、應用開發領域等方面對調查問捲進行了重新設計,同時還新增加了區塊鏈、物聯網等新興軟件開發領域的相關調查,更能體現中國 IT業、尤其是軟件開發領域的發展現狀。
30歲以下開發者佔比超7成,近半數開發者奮斗在一線城市
通過對47個行業、200多個地區的上萬名軟件開發者進行調查,可以發現開發者群體年輕化比例在持續增高。
和國外開發者年齡分佈趨勢大概一致,國內的軟件開發者群體一直呈現出年輕化的特點。 從我們2015年到2017年的調研數據來看, 30歲以下的開發者人群佔比都在7成以上,一直是軟件開發領域的主力軍。
其中,30歲以上的開發者以高級工程師、項目經理、架構師、技術專家等職位居多,而40歲以上的開發者則是從事架構設計崗位的比例最高——互聯網、軟件、IT服務三個 技術領域已經涵蓋了國內65%以上的開發者。
在開發者薪資方面,開發者仍是當之無愧的高薪人群。 月薪在1萬元以上的開發者佔總體數量的59%,較去年又上升了14個百分點。 在北、上、廣、深以及天津等一線城市中,月薪過萬的軟件開發者佔比71%,該比例遠高於國內其它城市,但其他城市月入過萬的開發者也出現了較 大幅度的增長。
此外通過數據交叉對比分析可以發現,8成架構設計師月薪過萬,超3成的架構師平均月薪超過2萬元——架構師一職成了高薪開發者追求的香餑餑。
6成開發者每週學習6小時以上,9成關注信息技術類網站
開發者對新技術的追求是十分敏銳的,信息技術類網站就是他們了解行業動態和學習知識的主要渠道。 通過調研發現,超9成開發者計劃通過學習新技術來提升自己的事業,且6成開發者每週學習6小時以上。
在本次調研中,90%的開發者會通過技術媒體、技術社區、技術論壇等網站了解行業最新動態、獲取新知識。 閱讀技術類書籍也是開發者進行系統性學習的主要方式,比例占到54%。
在其他學習方式上,74%的人群願意通過購買圖書雜誌方式進行學習,超5成人員願意為線上課程付費。 目前,時長越短的線上培訓越受歡迎,500元以下且週期1個月以內的線上培訓接受率超過5成。
不過願為線下培訓付費的僅佔39%,週期長、耗時多是重要的因素。
而且據調查,35%的開發者未來半年都有培訓計劃。 但是其中,超過8成的開發者參加培訓的預算是來自個人,來自單位的僅佔17%。
在開發者感興趣的培訓方向上,63%的開發者偏愛人工智能,56%對大數據/雲計算感興趣,想要參加區塊鏈培訓的人數僅佔15%。
7成開發者使用Java,6成開發者最想學Python
編程語言之爭是開發者永不厭倦的話題。
在本次調查中,Java、R和JavaScript成為開發者最多使用的編程語言。 Python則是開發者近期最想學的開發語言,其次是Java和R。
Java雖然是老牌語言,但它一直在持續更新優化,且具備完善的生態和廣泛的使用場景,使其依然非常有生命力。 而且隨著人工智能發展的火熱,也成為促進Python語言應用的催化劑。
此外,6成以上開發者在使用Windows操作系統,13%在使用Linux操作系統。 63%的開發者在使用MySQL數據庫,34%的在使用Oracle數據庫。
傳統的X86機器相對Mac機器,最大的優勢就是價格低,因此在公司開發普及層面會佔據一定的優勢。 Linux在GUI、軟件生態等方面相對Windows有不少的短板,因此Window會成為開發者的首選操作系統。
開發者的雲/容器使用率不高,使用最普遍的Docker(Swarm)普及率也僅11%。 在文本編輯器方面,Notepad++較為流行,57%的開發者使用了Notepad++,其次是Sublime Text,29%的開發者在使用 。
Frameworks方面,jQuery、Spring Framework較受歡迎,3成以上開發者在使用這兩者。 在開發微服務架構中使用Java作為開發語言,那麼開發框架使用Spring Framework往往是首選。 在前端的世界裡,jQuery由於簡單、易用,在項目過程中往往能夠較好滿足需求,使得其一直很堅挺。
大數據技術應用開始普及,但應用場景相對單一
本次調研數據顯示,78%的企業在進行大數據相關的開發和應用。 這個比例與2015年、2016 相比,有了非常大的提升。 此外,隨著雲計算技術的成熟及廣泛應用和出於對數據安全性的考慮,在大數據平台構建方式上,2017年有4成企業選擇私有云解決方案來部署大數據應用。
大數據時代,大數據所蘊含的價值已經毋庸置疑,然而許多企業卻不知道如何獲取大數據的價值、如何讓大數據應用落地。 目前大約57%的企業對大數據的應用更多仍體現在統計分析、報表及數據可視化上。
不過,Spark、Redis和Kafka已經基本成為了企業大數據平台通用技術組件。 其中,Spark是企業大數據平台中使用最普遍的組件,Redis和Kafka則是最普遍使用的消息隊列和數據採集技術組件。
超7成企業利用雲平台已經開發應用或正在開發應用
雲計算已經相當普及。 調研數據顯示,有83%的企業正在使用雲服務,相較2016年有非常大的提升。 僅有不到1成左右的企業對雲計算平台基本不了解或者無意使用,75%的企業利用雲平台已經開發應用或正在開發應用。
在當前的國內公有云平台市場中,阿里雲服務以64%的使用率遙遙領先於其他雲服務廠商,排在首位。 其次是騰訊雲服務,使用率為14%。
在具體應用上,企業在虛擬機、網絡存儲、負載均衡方面應用雲計算較為普遍,使用率分別是48%、39%、33%。 此外,基於Docker或OpenStack是當前云平台部署的兩種主流框架。
不過,安全問題仍是企業選擇公有云服務時最大的顧慮,也是進行雲技術相關開發時的最大難題。 由於成熟的傳統安全方案並不能直接套用到雲環境中,企業在部署私有云平台時如何設計和實施安全方案,企業在使用公有云時如何確信服務商對數據做了足夠的安全保護… …隨著雲技術得到越來越廣泛的應用,這些都是雲廠商和服務商未來必須直面的問題。
區塊鏈技術剛剛興起,僅1成開發者有應用或準備應用
區塊鏈作為近年來興起的技術,當前應用相對較少。
調查顯示,正在用或者準備用區塊鏈技術解決技術問題的人群僅佔受訪者的10%,有20%的人對區塊鏈完全不了解。
現階段,區塊鏈從技術上講還是屬於後端架構類,因此迄今為止從事過與區塊鏈技術相關的開發工作的人員,也都是這個領域的從業者。 其他方向,如:測試、UI/UE、數據分析等,則由於系統形態和行業滲透度的原因,最多只做到聽說/了解過這項技術的程度,在日常工作中都很難直接參與 。
比特幣和以太坊是當前兩種主流的區塊鏈開發平台。 據調查,開發者正在使用的區塊鏈平台中,比特幣和以太坊分別佔23%、17%。 Python和Java則是區塊鏈的主流開發語言,分別佔19%、18%。 在核心應用的開發中,Java使用更為普遍,佔39%,Python其次,佔28%。
從核心開發者的角度看,應用開發仍然是Java為主。 因為即使開發區塊鏈相關應用,仍然會有很大一部分在傳統技術棧上。
對於目前的區塊鏈技術來說,缺少開發經驗、技術資料以及落地的應用和場景是當前區塊鏈開發的主要挑戰,此次調研中分別佔56%、54%、50%。
不過,區塊鏈與大數據、雲計算、物聯網行業的結合普遍被看好,分別佔63%、57%、53%。 超7成開發者表示會考慮1年內會進入區塊鏈行業。
人工智能技術受到熱烈關注,應用前景廣闊但任重道遠
當前AI/機器學習/深度學習的普及率還偏低,但發展潛力很大。 本次調研數據顯示,已經使用AI技術的開發者僅佔15%。 不過,40%表示正在嘗試用AI/機器學習/深度學習來處理數據,只有25%的開發者表示完全沒有人用過。
在技術應用方面,TensorFlow是人工智能領域主流深度學習框架,使用普及率達到48%。 此外,傳統機器學習方法在開發者中的使用量接近2/3。 而CNN類、RNN類深度學習模型也同樣火熱。
而隨著人工智能的火爆,對機器學習/深度學習算法、數據分析的崗位需求也越來越大。 調查顯示,目前機器學習/深度學習算法工程師、數據科學家/數據分析師/數據挖掘工程師崗位從業人員更多,分別佔18%、17%。
然而最急缺的崗位也是機器學習/深度學習算法工程師、數據科學家/數據分析師/數據挖掘工程師崗位。 58%的開發者表示其團隊急缺機器學習/深度學習算法工程師,45%表示急缺數據科學家/數據分析師/數據挖掘工程師崗位。
這種勢頭下,各種人工智能相關培訓也是風生水起。 但是調查顯示,開發者更願意通過自學的方式學習AI/機器學習/深度學習技術,佔比68%。 還有接近四成的開發者是通過在工作中實踐、線上培訓課程等途徑來學習AI技術的。
本文內容來源於《2017年中國軟件開發者白皮書》,版權屬於CSDN。
完整報告獲取鏈接:https://download.csdn.net/download/xhwuli/10532263。