華為:兩年前要炸掉研發金字塔,今天要投入 20 億美元全面提升軟件質量

收藏待读

2016 年 8 月,一位華為內部署名「泥瓦客」的海歸程序員,寫下了一篇 《華為到該炸掉研發金字塔的時候了》 的文章,從組織、流程、環境、工具等四方面怒斥在華為做研發之不易。此文被轉發到華為心聲社區後引起激烈討論,更驚動了任正非本人。兩年後,任正非簽發公開信表示:要投入 20 億美元全面提升華為軟件質量,打造可信的高質量產品。行動計劃包括:要從最基礎的編碼質量做起,視高質量代碼為尊嚴和個人聲譽;要重構腐化的架構及不符合軟件工程規範和質量要求的歷史代碼;要建立一支更高水平的 Committer 角色群體…兩年時間,華為改變了什麼?

兩年前的華為

2016 年 7 月,一位署名「泥瓦客」的華為海歸程序員,寫下了一篇痛陳華為研發弊病的長文,此篇文章不僅在華為心聲社區引起激烈討論,更是驚動了任正非本人。

任正非回應道:在技術工作上的客氣是毒品,直面的批評、爭論才是良藥。

該作者曾在硅谷工作,接觸過世界級的開發模式。在其進入華為幾年間,和幾個做企業業務的產品線有些合作,在此過程中感到華為公司在軟件產業的差距還比較大;和中國領先的互聯網產品相比,在易用性、貼近用戶和產品快速迭代等方面也落後不少。在軟件研發領域存在不少問題,這些問題導致華為的 IT 軟件產品質量比較低下、開發效率低、產品交付周期漫長,很是讓人痛心。具體而言,包括組織、流程、環境、工具四個方面。

此篇文章在華為心聲社區引起的討論也異常激烈,認同作者觀點的人不在少數。感興趣的同學可以戳此 《華為到該炸掉研發金字塔的時候了》 閱讀。這也從側面印證了,華為在飛速發展的時代,在硬件方面取得了驕人的成績,卻在軟件開發方面落後於人。

兩年後的華為

兩年多過去了,以虛心態度面對這逆耳忠言的任正非、華為高管們,又做出了怎樣的改變?

研發投入全球前五

2016 年,華為研發投入 764 億元,占銷售收入的 14.6%。

2017 年,華為研發投入 897 億元,中國第一,全球第六。

2018 年,華為研發投入 113.34 億歐元,中國第一,全球第五。

根據 2017 年的數據,華為研發人員約 8 萬名,占公司總人數的 45%。近十年累計投入的研發費用超過人民幣 3940 億元,累計獲得專利授權 74,307 件;其中,90% 以上專利為發明專利。

成立 Cloud BU,加碼雲計算

2017 年,華為雲正式成為一級部門,僅次於運營商、企業業務、消費者三大 BG;截至 2017 年底,華為雲上線 14 大類 99 個雲服務,以及製造、醫 療、 電 商、 車 聯 網、SAP、HPC、IoT 等 50 多個解決方案。

2017 年,華為雲銷售收入達到 5 億美元,摺合人民幣:32 億元左右。2018 年上半年華為雲收入同比增長 700%。作為對比,主要競爭對手阿里雲全年營收 11.12 億美元,份額達 45.5%,騰訊雲營收 2.51 億美元,份額 10.3%。從體量上來看,華為雲似乎只是國內雲計算市場的攪局者,但從華為計劃投入萬名研發加碼雲計算的決心來看,華為雲的野望似乎又遠不止於此。

布局 5G,決戰未來

在無線領域,華為發佈了 5G 端到端解決方案,包括無線、傳輸、核心網、終端 (CPE) 在內的商用產品,與運營商及主流終端芯片廠商完成 IODT 測試,協助全球多個運營商在多個核心城市完成 5G 預商用部署。

雖然最近幾周,中美貿易戰背景下,華為在多個國家的 5G 市場遭到封禁,但華為仍舊贏得了 25 份 5G 商業合同,並已向不同國家發運 1 萬多台 5G 基站。華為輪值 CEO 胡厚崑表示,在全球移動互聯網進入 5G 時代之際,禁止華為進入其電信基礎設施的國家將處於嚴重劣勢。

任正非公開信里透露了哪些信息?

今天,我們又處在一個新的起點,全面雲化、智能化、軟件定義一切等發展趨勢,對 ICT 基礎設施產品的可信提出了前所未有的要求。

不難看出,雲計算、人工智能將是華為接下來的軟件研發重點投入領域。而不管是雲計算還是人工智能,對於底層軟件基礎設施的要求都非常之高。在過去飛速狂奔的業務發展面前,華為的軟件研發水平沒有配套跟上,勢必將在未來掣肘高新業務的發展。因此,夯實軟件基礎設施的地基,將是未來華為研發的前提與重心。

可信將成為客戶願買、敢買和政府接受、信任華為的基本條件。 今天,我們要把可信作為第一優先級,放在功能、特性和進度之上。

最近一段時間,以美國為首的西方國家密集出現對於華為的排擠、打壓現象,具體表現為美國全面禁售華為手機、多個西方國家 5G 招標禁止華為參與、基礎通信設施移除華為設備等。

在這個時間節點上,任正非對於可信的最高要求,可以看做是釋放一個穩定軍心的信號:對內部而言,是提振士氣;對外部而言,是給合作夥伴一顆定心丸。

公司已經明確,把網絡安全和隱私保護作為公司的最高綱領。關鍵內容包括:安全性(Security)、韌性(Resilience)、隱私性(Privacy)、可靠性和可用性(Reliability& Availability)。

這裡進一步闡述了「可信」的衡量維度,這要求公司集體轉變觀念,追求打造可信的高質量產品,不僅僅是功能、特性的高質量,也包括產品開發到交付過程的高質量。

我們要從最基礎的編碼質量做起,視高質量代碼為尊嚴和個人聲譽。

我們要深刻理解架構的核心要素,基於可信導向來進行架構與設計。

我們要重構腐化的架構及不符合軟件工程規範和質量要求的歷史代碼。

我們要深入鑽研軟件技術,尤其是安全技術。

我們要遵守過程的一致性。

我們將通過變革形成一套適應上述變化的流程、組織與考核機制。

這一系列的「我們要」,其實就是華為接下來研發改革的行動指南,也即上文如何做到「可信」的全面解答。在過去的印象里,華為集團不是一個以工程師文化聞名的公司,但在任正非的公開信里,我們可以看到了華為構建工程師文化的意願:

我們將全面強化以 Committer 角色為核心的代碼審核和提交機制,代碼經過更加嚴格和系統的審核才能合入版本。為此我們將建立一支更高水平的 Committer 角色群體,負責軟件架構的看護、代碼的審核和提交,整體保障合入代碼的高質量。我們要變革考核機制,要讓架構設計好、代碼寫得好的人脫穎而出,對編程能力不滿足要求的人給予幫助和培訓。但任何人如果編寫的代碼長時間不能合入版本,將會被團隊拋棄。

變革會給華為帶來什麼?

歷史代碼的重構從來不是一件容易的事情,這會涉及到相當多的部門和業務,而且重構相當於給正在行駛中的汽車換輪子,一定會發生很多問題。接下來的幾年,華為軟件 可能會 經歷問題頻發的陣痛期。

以 Committer 為核心建立流程,這其實就是工程師文化的開端。一方面,這將有利於工程師地位的提升,另一方面,也可以改變外行領導內行的弊病。最重要的是,一個有良好工程師文化的大公司,必將吸納更多技術人才的加入,也會得到更加良好的軟件開發口碑。可以預見的是,2019 年,華為將舉辦更多開發者相關活動,未來將會見到更多前綴名「華為」的開發者大賽、Hackathon 等線上、線下活動,加強開發者品牌的經營與完善。

此外大膽猜測,華為是否會建立一個和阿里巴巴一樣的技術中台?中台戰略最早是由阿里巴巴提出,「中台」是強調資源整合、能力沉澱的平台體系,為直接與用戶打交道的「前台」的業務開展提供底層的技術、數據等資源和能力的支持,中台將集合整個集團的運營數據能力、產品技術能力,對各前台業務形成強力支撐。2018 年,騰訊組織架構調整,也設立了中台部門。如果華為要加大軟件基礎設施的建設,那麼成立一個類似「共享事業部」的部門似乎是順理成章的。

附任正非公開信全文

致全體員工的一封信:

我今天寫信,是要和大家溝通公司如何全面提升軟件工程能力和實踐。

二十年前的 IPD 變革,重構了我們的研發模式,實現了從依賴個人、偶然性推出成功產品,到制度化、持續地推出高質量產品的轉變。至今為止,我們的產品和解決方案已經在 170 多個國家安全穩定運行,並因此積累和贏得了全球數萬客戶的信任。

今天,我們又處在一個新的起點,全面雲化、智能化、軟件定義一切等發展趨勢,對 ICT 基礎設施產品的可信提出了前所未有的要求。 可信將成為客戶願買、敢買和政府接受、信任華為的基本條件。 可信不僅僅是產品外在表現的高質量結果,更是產品內在實現的高質量過程,是結果和過程的雙重可驗證的高質量。而只有全面提升軟件工程能力和實踐,才有可能打造出可信的高質量產品。

公司已經明確,把網絡安全和隱私保護作為公司的最高綱領。我們要在每一個 ICT 基礎設施產品和解決方案中,都融入信任、構建高質量,關鍵內容包括:

安全性(Security)。產品有良好的抗攻擊能力,保護業務和數據的機密性、完整性和可用性。

韌性(Resilience)。系統受攻擊時保持有定義的運行狀態,包括降級,以及遭遇攻擊時快速恢復的能力。

隱私性(Privacy)。遵從隱私保護既是法律法規的要求,也是價值觀的體現。用戶應該能夠適當地控制他們的數據的使用方式。信息的使用政策應該是對用戶透明的。用戶應該根據自己的需要來控制何時接收以及是否接收信息。用戶的隱私數據要有完善的保護能力和機制。

可靠性和可用性(Reliability& Availability)。產品能在生命周期內長期保障業務無故障運行,具備快速恢復和自我管理的能力,提供可預期的、一致的服務。

全面提升軟件工程能力和實踐,關乎公司未來的生存和發展,與我們每一個人都息息相關。在此,我希望全體員工、特別是軟件工程師們主動參與進來,從自己做起,踏踏實實,共同打造可信的高質量產品。

我們要轉變觀念,追求打造可信的高質量產品,不僅僅是功能、特性的高質量,也包括產品開發到交付過程的高質量。我們知道,功能、特性對產品至關重要,我們更知道,進度對滿足客戶需求也至關重要。 今天,我們要把可信作為第一優先級,放在功能、特性和進度之上。 除非客戶信任我們的產品,否則這些優秀的特性都沒有機會發揮價值。我們各級管理者和全體員工都不得以進度、功能、特性等為理由來降低可信的要求,確保可信的要求在執行過程中不變形。

我們要從最基礎的編碼質量做起,視高質量代碼為尊嚴和個人聲譽。代碼就像是高樓大廈的一磚一瓦,沒有高質量的代碼,可信的產品就是空中樓閣。我們要優化並遵循公司各種編程規範,遵從架構與設計原則,熟練使用各種編程庫和 API,編寫出簡潔、規範、可讀性強、健壯安全的代碼。

我們要深刻理解架構的核心要素,基於可信導向來進行架構與設計。在確保可信的前提下,要在性能、功能、擴展性等方面做好權衡;慎重地定義我們的模塊與接口,真正做到高內聚與低耦合;我們要遵循權限和攻擊面最小化等安全設計原則,科學設計模塊之間的隔離與接口,提升安全性;低階架構與設計要遵循高階的架構與設計原則,在充分理解原有架構與設計的情況下,持續優化;我們要熟悉各種設計模式,重用公共成熟組件和服務,避免重複勞動。

我們要重構腐化的架構及不符合軟件工程規範和質量要求的歷史代碼。我們知道,再好的架構,其生命力也是有限的。隨着時間的推移、環境的變化以及新技術、新功能特性的引入,架構也會腐化。面對腐化了的架構,要毫不猶豫地去重構它。同時主動以可信設計原則為導向,去重構不符合軟件工程規範和質量要求的歷史代碼,提升軟件架構的生命力。

我們要深入鑽研軟件技術,尤其是安全技術。軟件技術是我們打造產品的基本工具,技術是否先進,技術選擇是否合理,將決定我們軟件的高度;我們要深入學習架構與設計、編碼、測試、安全、可用性、性能、維護性、體驗等技術,併科學運用這些技術。

我們要遵守過程的一致性。遵守適用的法律法規、遵循業界共識的標準、規範,確保規範到實現的一致性、代碼到二進制的一致性。架構要符合架構原則,設計要遵循設計模式,代碼要符合編程規範,最終做到需求與實現一致,達成各項對客戶的承諾。我們只有腳踏實地做好每一步,才能真正打造出可信的高質量產品。

為此,我們要改變行為習慣,追求精品。我們要開放透明、積極和勇於揭示問題並主動推動改進。軟件開發是一種創造性和藝術性的工作,需要充分發揮我們的聰明才智和潛力。 我們要改變只重視功能結果、不重視代碼質量的行為習慣,要嚴格遵守軟件工程規範;改變被動的修修補補;改變碎片化知識獲取,主動去學習提升並貢獻經驗、代碼,形成共享知識庫。 我們需要改變的行為和習慣還有很多,對絕大多數人來講都將是一個痛苦的轉變過程,會脫一層皮,但我相信大家能夠迎接這種挑戰。

更為重要的是, 我們將通過變革形成一套適應上述變化的流程、組織與考核機制。 我們要完善並增強透明、可回溯和可審計的全流程管理機制,以可信的視角,從初始設計、完整構建到產品生命周期管理,全面提升軟件工程能力和實踐。 我們將全面強化以 Committer 角色為核心的代碼審核和提交機制,代碼經過更加嚴格和系統的審核才能合入版本。為此我們將建立一支更高水平的 Committer 角色群體,負責軟件架構的看護、代碼的審核和提交,整體保障合入代碼的高質量。我們要變革考核機制,要讓架構設計好、代碼寫得好的人脫穎而出,對編程能力不滿足要求的人給予幫助和培訓。但任何人如果編寫的代碼長時間不能合入版本,將會被團隊拋棄。

過去一百年來,世界上許多成功的公司都因不能適應變化而倒下。要適應外部變化,唯有自我進化,我們必須保持開放和持續變革。 董事會已決定,全面提升軟件工程能力與實踐將以變革的方式來開展,由輪值董事長徐直軍總負責,公司初始投入 20 億美元,計劃用 5 年時間,在 ICT 基礎設施領域實現為客戶打造可信的高質量產品的目標。 希望您支持並積極投入到這一偉大的變革。唯有如此,我們才能實現未來的願景和使命:把數字世界帶入每個人、每個家庭、每個組織,構建萬物互聯的智能世界。

任正非

2018 年 12 月 27 日

原文鏈接

http://xinsheng.huawei.com/cn/index.php?app=forum&mod=Detail&act=index&id=4134815

原文 : InfoQ

相關閱讀

免责声明:本文内容来源于InfoQ,已注明原文出处和链接,文章观点不代表立场,如若侵犯到您的权益,或涉不实谣言,敬请向我们提出检举。