雲計算髮展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

2020 年 3 月 9 日,騰訊公司正式對外發布了《騰訊研發大數據報告》。在這份報告中,騰訊披露了2019 年公司在產品及技術研發方面的重要數據,這也是騰訊自技術委員會成立以來第一次主動對外披露研發相關大數據,是騰訊對自身技術研發層面的一次階段性總結。

該報告是由騰訊旗下敏捷研發協作平臺TAPD、騰訊代碼託管平臺工蜂與騰訊集成交付系統騰訊CI聯合出品,這三款平臺支撐了騰訊幾乎全量業務的研發全流程。

研發人員佔比 66%,新增 12.9 億行代碼

報告顯示,騰訊在研發投入上持續加碼。

2019 年,騰訊研發人員佔比高達 66%,在中國諸多科技公司中位居前列。同時,騰訊 2019 年新增研發項目超過 3500 個——隨著騰訊全面擁抱產業互聯網的戰略推進, 2019 年 To B 項目數量比 2018 年增長了 77%。

在代碼數量上,2019 年騰訊新增代碼行數高達 12.9 億,相比 2018 年增長了 30%。

雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

在研發效能方面,騰訊同樣表現亮眼。

自 2006 年起,騰訊就開始推動研發模式的敏捷進化,在長期的敏捷研發實踐中,騰訊開發人員構建出了騰訊敏捷協作平臺 TAPD 和騰訊工蜂這兩大工具,可實現對用戶需求的快速響應。

TAPD 提供產品研發全生命週期解決方案,支持敏捷需求規劃、迭代計劃跟蹤、測試與質量保證、持續構建交付、研發效能度量及研發知識沉澱等全過程研發實踐,助力研發團隊敏捷高效協作與高質量交付。2017年TAPD對外開放,騰訊將寶貴的研發模式、實踐及工具對外輸出,助力企業提升研發效能,目前已服務數10萬家企業。

而騰訊工蜂是騰訊歷時 4 年打造的分佈式企業代碼管理協作解決方案。具備代碼檢視、分支管理、會話式開發、集成定製、審查和監控等企業級研發管理系統特性,助力企業貫穿研發流程,讓開發和研發管理更加敏捷高效——值得一提的是,與騰訊 TAPD 一樣,騰訊工蜂也已經對外開放使用。

數據顯示,騰訊60% 的項目團隊規模在 20 人以下,47.8%的項目迭代週期在 1 周之內,平均每天完成用戶需求 3802 個,而 28% 的需求可以在1 天內得到響應。另外在 Bug 處理方面,46% 的 Bug 在 1 天內得到解決,82% 的 Bug 在 1 周內得到解決。

雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5


雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5


雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

在研發的持續交付方面,騰訊平均每週構建次數達 80 萬次,項目年均產物大小 600G,年均交付次數 3000 次,推動修復代碼 Bug 和安全漏洞 14 萬個,編譯加速累計節省編譯耗時 1.9 個萬小時。

雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

隨著騰訊雲計算和大數據相關業務的迅速發展,Go 語言首次躋身騰訊編程語言排名TOP5;整個 2019 年,騰訊內部使用最多的五種編程語言分別是:C++、JavaScript、Go、Java、Python。

雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

在技術管理人員的研發參與度上,騰訊保持著強大的活力。騰訊 74% 的技術 Leader 仍在持續輸出代碼,2019全年,平均每人輸出代碼 3 萬行,參與 140 次代碼評審;38%的 12 級及以上技術專家潛心編碼,平均每人輸出代碼 3.3 萬行,參與 155 次代碼評審。

雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

開放協作,騰訊技術大變身

對於騰訊來說,上述成果的取得,離不開騰訊 2019 年對優化技術研發環境、提升研發效能的重視。

2019 年 1 月 4 日,騰訊技術委員會正式成立,由騰訊高級執行副總裁、技術工程事業群總裁盧山和騰訊高級執行副總裁、雲與智慧產業事業群總裁湯道生兩名騰訊總辦成員親自牽頭,下設"開源協同" 和 "自研上雲" 兩個項目組和對外開源管理辦公室,以此來促進內部代碼的開放共享和協同共建,在內部開源基礎上加碼對外開源,並推動業務在雲上全面整合。

在開源協同理念提出之後,騰訊從各個事業群梳理出了一些相對基礎性的技術版塊率先進行了開源協同的實踐,其中騰訊CI就是一個較為典型的例子。騰訊CI Oteam是騰訊內部的一個跨團隊虛擬組織,由IEG(互動娛樂事業群)的藍鯨團隊牽頭,組織相關團隊和個人共同進行騰訊統一的持續集成交付系統——騰訊CI的開發建設及運營,旨在減少重複勞動、提升研發效能。

經過一年時間,騰訊在內部的代碼開放和技術協同方面已經取得一定進展。

截止目前,騰訊CI的Oteam中,共有來自全騰訊的303名開發人員提交了自己開發的插件,用於對接各個事業群在CI流程中會用到的內部系統。

報告數據也顯示,在技術協同方面,騰訊內部參與最多跨團隊研發項目的人,為 24 個協作項目貢獻了力量;涉及部門最多的研發協作項目,凝聚了 12 個部門的智慧;跨團隊協作參與度最高的部門,加入了 113 個研發協作項目的建設。

雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

在過去一年,通過開源協同,騰訊各個事業群最底層和共性的技術能力進行梳理和拉通,建立篩選機制,推動優質開源協同項目對外開源。改變了原來"自下而上"純自發開源的路徑,採取"自下而上"與"自上而下"相結合,自發與自覺相結合的開源新模式。

在內部開源方面,騰訊內部整體代碼開源率由 2019 年年初的 20% 增長至年底的 70%,代碼協同共建已成為一種趨勢。其中,2019 年騰訊內部新增協同代碼庫超過 4400個,Q4 較 Q1 增長了 56.3%。其中包含 53 個公司內部重點開源項目(涉及 400 多個代碼庫)在進行協同。

雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

在外部開源方面,截至 2019 年年底,騰訊在 Github 自主開源項目數為 92 個,貢獻者超過 1000 個,獲得 Star 數超過 27 萬,在 Github 全球公司貢獻榜上的排名穩居前十。

雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

2019年全年,騰訊開源超過22個項目,包括 TubeMo 億萬級分佈式消息中間件、TencentOS tiny 自研輕量級物聯網操作系統、TKE 騰訊雲容器服務和TBase 企業級分佈式 HTTP 數據庫管理系統都在2019年接連開源。

2019年,騰訊和開源社區的合作也發展到了新的階段,Angel項目完成了從單一的模型訓練平臺到全棧機器學習平臺的技術演進,成功從LF AI基金會畢業;TARS項目成為開源社區僅有支持五種開發語言並有完善服務治理和運營平臺的微服務開發框架。此外,騰訊還作為創始會員,加入了LF Edge基金會,和業界合作伙伴一起推動邊緣計算軟硬件開源技術的發展。

開源協同,騰訊新代碼文化形成

2019 年,騰訊不僅通過開源協同實現了技術研發環境的優化,更是形成了一種全新的代碼文化。

實際上,騰訊代碼文化的誕生,可以回溯到 2013 年;當時,在公司 "開放" 戰略升級的背景下,騰訊提出了代碼的 "開放、複用和合力開發"。以往騰訊的開源文化更多是自下而上的,而在2019 年騰訊技術委員會成立後,自上而下的開源協同機制建立,以"開源、協同、雲上生長"為核心的騰訊新代碼文化快速成長。

2019 年 1 月,在騰訊技術委員會的指導下,騰訊技術社區 "碼客"和"技術圖譜"上線。在近一年的時間內,每個月有超過 80% 的技術人員訪問碼客社區和技術圖譜進行技術討論和協同,社區上提問數量近 3000 個,回答與評論達 15 萬次,94% 的技術難題都得到了回覆。

2019 年 11 月 11 日,騰訊在成立 21 週年之際宣佈企業文化 3.0,其中將 "合作" 升級為"協作"。這一改變實際上具有明確的價值導向,就是要"開放協同,持續進化"——從某種意義上,這也充分契合了騰訊內部的技術和代碼文化:對內要大家放大格局、打開邊界,以開源的心態與各組織協同,用符合互聯網思維的方法和工具進行協作。

值得一提的是,騰訊內部的技術文化,也充分體現在騰訊對 2020 年新冠疫情的抗擊之中。

報告顯示,在2020年新冠肺炎疫情期間,騰訊迅速出擊,在智慧教育、智慧醫療、遠程辦公、智慧政務等各個領域推出相應服務,騰訊會議、企業微信、TAPD、騰訊工蜂、騰訊樂享等多款To B產品全面升級功能、免費開放,支撐抗擊新冠肺炎疫情工作。

雲計算發展迅猛,Go 語言成為騰訊程序員愛用編程語言TOP5

春節期間,騰訊有8000多名研發人員通過遠程研發協作方式投入抗疫戰鬥,為了給社會提供更好的服務,各領域產品及時響應、快速迭代,共提交代碼14.7萬次,52% 的需求在 1 小時內就能得到響應。各領域產品全力抗疫的背後,是騰訊研發能力多年的沉澱,也是騰訊新代碼文化的外在彰顯。

而在未來,騰訊希望打造出更加優秀的代碼文化。正如盧山此前在騰訊內部所言:

希望今後的新員工會覺得,在騰訊做開發是很幸福的事情,能學到很多東西,能看到很多優秀的代碼。人們不僅談論硅谷文化,也談論我們中國開發人員的代碼文化。


分享到:


相關文章: