博客專欄

EEPW首頁 > 博客 > 任正非簽發(fā)舊文:華為到該炸掉研發(fā)金字塔的時候了

任正非簽發(fā)舊文:華為到該炸掉研發(fā)金字塔的時候了

發(fā)布人:傳感器技術(shù) 時間:2021-08-16 來源:工程師 發(fā)布文章

近日,華為內(nèi)部員工社區(qū)平臺“心聲社區(qū)”重新轉(zhuǎn)發(fā)了一遍2016年的文章《華為到該炸掉研發(fā)金字塔的時候了----關(guān)于我司軟件研發(fā)效率與質(zhì)量提升的思考》及評論,該文章作者為署名“泥瓦客”的海歸員工,并由任正非簽發(fā)。其中任正非添加的按語1提到,在技術(shù)工作的客氣是毒品,直面的批評、爭論才是良****。


而華為常務(wù)董事、運營商BG總裁丁耘的按語2則寫到:


我們在CT領(lǐng)域取得的產(chǎn)品成功不是未來可靠的向?qū)В覀儽仨氁掷m(xù)進步才能適應(yīng)時代的客戶需求、才能獲得未來的發(fā)展。我們要清晰地認(rèn)識到,面向ICT融合,在軟件能力、效率和質(zhì)量方面存在的挑戰(zhàn),在組織流程、作業(yè)環(huán)境等多方面存在的或多或少的不適應(yīng)性和問題。


盡管我們在參考業(yè)界、反思自己的基礎(chǔ)上,開展了軟件能力建設(shè)并取得了部分進展,但要實現(xiàn)我們期望的目標(biāo)還需要持續(xù)做出更大的努力,需要生產(chǎn)力持續(xù)提高,在此過程中我們各級主管和專家在思想意識和行為技能上的轉(zhuǎn)變是關(guān)鍵。


期望各級主管和專家閱讀所附文章,不局限于文章中提到的問題建議,深入討論影響軟件研發(fā)效率、質(zhì)量、業(yè)務(wù)發(fā)展的問題,討論中多審視自己、少抱怨別人,天底下容易的是指責(zé)別人,難的是改變自己。組織的生命力恰恰在于自我進化能力。我們既需要坐而言,更需要起而行,從自己做起,堅持以客戶為中心,通過點點滴滴、持之以恒的努力,持續(xù)有效改進,靜水潛流實現(xiàn)ICT成功的轉(zhuǎn)型。


文 | 泥瓦客




全文如下:


近年,在從CT到ICT的轉(zhuǎn)型的過程中,華為公司的研發(fā)如何能解放和發(fā)展生產(chǎn)力,大幅提升研發(fā)效率,是我們未來能否立足于強者之林的一個關(guān)鍵。


筆者以前曾在美國硅谷工作,和世界上最頂尖的軟件工程師和計算機領(lǐng)域的牛人一起共事過,也先后帶領(lǐng)過不同的團隊交付了一些業(yè)界領(lǐng)先的企業(yè)級軟件產(chǎn)品。


幾年前進入華為,和幾個做企業(yè)業(yè)務(wù)的產(chǎn)品線有些合作,在此過程中感到華為公司在軟件產(chǎn)業(yè)的差距還比較大;和中國領(lǐng)先的互聯(lián)網(wǎng)產(chǎn)品相比,在易用性、貼近用戶和產(chǎn)品快速迭代等方面也落后不少。


我們在軟件研發(fā)領(lǐng)域的確存在不少問題,這些問題導(dǎo)致我們的IT軟件產(chǎn)品質(zhì)量比較低下、開發(fā)效率低、產(chǎn)品交付周期漫長,很是讓人痛心。


因此筆者寫下了這篇文章,希望能拋磚引玉,供大家思考。

組織


1、架構(gòu)設(shè)計SE與開發(fā)分離,一些架構(gòu)師與專家基本不懂開發(fā)


一般各個產(chǎn)品線都會設(shè)有架構(gòu)設(shè)計部,主要成員也會以各個層次的SE為主。這些SE也都曾是程序員,但通常因為長期脫離開發(fā)部門,主要精力都放在會議、膠片和文檔的編寫上,以致編程的能力基本丟失,新技術(shù)學(xué)習(xí)的機會也有限。


例如一個移動開發(fā)的SE,自己對怎么在Android、iOS上進行開發(fā)一點兒都不清楚。在這樣的基礎(chǔ)上,做好真正的架構(gòu)簡直是空談。在硅谷成功的公司里,好的架構(gòu)設(shè)計師一般是融入在產(chǎn)品團隊中的,隨時都能上手編程,而且編程能力非常強。


2、開發(fā)者多為低級別,比較難有技術(shù)積累


一般基層程序員在工作幾年后,有能力的都被提升到PL、PM、SE等職位,員工也都想著被提拔,漸漸成為管理者。大家覺得,光做開發(fā)沒有職業(yè)前途,永遠都是在金字塔的底層。而在硅谷的公司,說話比較有分量、收入相對較高的有很多是在各層級中的技術(shù)佼佼者,他們備受尊重,干得也開心,不少人根本不愿意轉(zhuǎn)做管理者。


編程其實是一門藝術(shù),熱愛和用心是非常重要的,也相應(yīng)的容易出成績。這就是為什么在計算機領(lǐng)域,如果做到頂尖程序員,一個人頂一百個很正常。如果程序員覺得沒有前途,不思進取,而資質(zhì)較好的很快又被提拔為管理者,那我們的軟件開發(fā)將很難有技術(shù)和人才的積累。


3、多頭管理


我司負(fù)責(zé)產(chǎn)品開發(fā)的部門有PDT、PDU等,相應(yīng)的擁有PDT經(jīng)理、PDU經(jīng)理、架設(shè)部經(jīng)理和SE、Project Manager、PO經(jīng)理、RDPDT經(jīng)理、Line Manager、Project Leader等多個角色。這種組織結(jié)構(gòu)清晰地定義了每個Leader的角色,確保一個大的產(chǎn)品開發(fā)周期和質(zhì)量有保證,同時保證開發(fā)的人力得到最合理的應(yīng)用。


但它帶來的問題也顯而易見,就是各個角色在產(chǎn)品開發(fā)過程中有不同的想法和意見,可能出現(xiàn)多頭指揮,讓開發(fā)人員無所適從,溝通的成本也非常大。同時,這種復(fù)雜的管理結(jié)構(gòu)對需要快速迭代的IT軟件開發(fā)也會帶來很大制約。


大家看看微信的起家史,應(yīng)該能感覺到,對于一些相對獨立的、需要快速迭代的IT軟件產(chǎn)品,往往在一個比較強的(產(chǎn)品)經(jīng)理帶領(lǐng)下的一個扁平化的團隊效率會高很多。


4、溝通成本高


由于組織復(fù)雜,中間層較多,各種各樣的任務(wù)從上面下來,落實的方法就是各種各樣的會議,所以現(xiàn)在很多研發(fā)員工的不少時間都被各種各樣的規(guī)劃、研討、問題回溯、客戶支持等會議占用。員工笑稱:白天是用來開會的,晚上加班才有時間編程序。針對于不同的組織和項目,能盡快找出相應(yīng)的溝通節(jié)點并能有效地減少這些溝通節(jié)點,是一個項目和部門領(lǐng)導(dǎo)需要經(jīng)常思考的問題。


流程


1、IPD流程不太適合需要快速迭代的軟件


公司引入的IPD產(chǎn)品開發(fā)交付流程給公司帶來了巨大的收益。但時代在發(fā)展,技術(shù)在演進,IPD流程更適合偏硬件的產(chǎn)品開發(fā),為了保障產(chǎn)品質(zhì)量,開發(fā)交付的周期較為漫長。從基層員工的角度,IPD流程節(jié)點的很多環(huán)節(jié),如為完成CLINT減少Warning的數(shù)字、DTS值減少等僵化的指標(biāo),實際上反而可能會加大產(chǎn)品的風(fēng)險,降低產(chǎn)品質(zhì)量。


2、安全紅線耗費資源巨大


安全紅線的目的是防止產(chǎn)品出現(xiàn)安全漏洞,初衷是好的,但執(zhí)行起來相對比較僵化,效率也低。試想一個互聯(lián)網(wǎng)產(chǎn)品為了過安全紅線一個版本等一兩個月,根本無法生存。


建議參照一些先進公司的方法,把安全意識教育和SDLC(安全開發(fā)生命周期)融入到員工日常開發(fā)習(xí)慣中,在開發(fā)的同時進行測試和督促整改,對于一些紅線達標(biāo)比較好的部門,可以適當(dāng)放松以加快交付,檢查出問題,相應(yīng)的問責(zé)機制要嚴(yán)格。把安全意識充分融入到開發(fā)者的血液中,讓安全紅線檢查“形同虛設(shè)”。


環(huán)境


1、沒有時間抬頭看路


開發(fā)員工長期在上述流程、組織問題和客戶支持的壓力下加班加點,幾乎沒有時間“抬頭看路”,只會用一些比較老舊的技術(shù),也不太會站在巨人的肩膀上前進,走了不少彎路,消耗了更多的資源。


互聯(lián)網(wǎng)時代,MOOC提供了大量實時、實用、先進的網(wǎng)上課程(包括免費的和收費的),如Coursera、Udemy、Pluralsight、Stanford Online、edX、YouTube相應(yīng)的Channel等,想要學(xué)的課程幾乎什么都有。


現(xiàn)在的計算機技術(shù)日新月異,新的思想、方法、工具等層出不窮,例如Java語言是2000年左右在企業(yè)軟件領(lǐng)域崛起的,幾乎成為很多平臺、服務(wù)端軟件的必選,但隨著大規(guī)模分布式架構(gòu)、云計算的興起,它的短板,如內(nèi)存管理/GC不可控性、多線程或是異步對IO的控制效率,過度依賴較為重載的OOP等問題,如果使用不當(dāng)很容易造成災(zāi)難性問題。


Google內(nèi)部漸漸把它們有些后臺軟件都遷移到了他們自己發(fā)明的更為先進的Go語言環(huán)境下。Dropbox更是兩年前開始使用了比Go還先進的Rust語言,無縫遷移了90%以上的云存儲平臺。試問,我司有幾個人用過甚至是聽說過這些語言?我們的研發(fā)員工如果不去不斷地提升,怎么可能趕上時代的步伐?怎么能開發(fā)出質(zhì)量好的產(chǎn)品?


2、技術(shù)任職資格效果不佳,傳幫帶困難


理論上,技術(shù)任職資格是用來給搞技術(shù)的人提供晉升通道的。但實際應(yīng)用上,雖然有破格提拔機制,總體上還是按資排輩,評委也大多是由有較高級別技術(shù)任職資格,但對現(xiàn)在技術(shù)并不太了解的管理者擔(dān)當(dāng)。


同時,任職從申請、技能鑒定考試到做答辯膠片、答辯,消耗了員工不少時間和精力。硅谷的公司一般在這方面比較靈活,技術(shù)通道由360 Review和與其工作密切相關(guān)的主管直接評價、申請和授予,有些員工在28-33歲左右已經(jīng)有了非常高的技術(shù)職級和地位。


因為技術(shù)晉升通道不順暢,能力較強的員工漸漸離開了開發(fā)崗位,較多時間沉浸在文檔、膠片和會議中,新來的年輕員工過幾年又在走同一個循環(huán)。是否可以徹底打通技術(shù)升職通道,鼓勵有能力的人帶新人,同時完善獎勵機制,在及時激勵和長期激勵上下功夫,讓研發(fā)人員看到技術(shù)發(fā)展空間,樂于編碼,留住人才。

工具


1、研發(fā)辦公環(huán)境


在硅谷先進的軟件公司里,MacBook Pro/Air是標(biāo)準(zhǔn)配置,方便攜帶,隨時隨地編程。很多軟件及移動開發(fā)調(diào)試都在家里、公司、食堂隨時可以進行,包括編程、編譯、Review和提交;數(shù)據(jù)庫、各種Library、工具和Docker等都可以在本地的OSX/Linux環(huán)境下運行。需要的話,也隨時可以跟公司內(nèi)部服務(wù)器通過命令行互聯(lián),進行文件、代碼的傳輸和測試。


筆者在硅谷工作時認(rèn)識一個美國小伙子,他基本都是深夜在家里寫代碼,白天幾乎看不到人,但效率和質(zhì)量都很高。而我們的大部分研發(fā)人員,都被局限在公司內(nèi)部擁擠嘈雜的敏捷島,用著桌面云進行著低效開發(fā)。


2、代碼庫管理、Review、Checkin和Bug Tracking工具


基于Web/Git的Review和Checkin的相應(yīng)工具差距非常大。通過源程序的Review審批和Checkin的機制,可以很快傳遞能力和互相學(xué)習(xí),提升代碼質(zhì)量。同時,在任何一個時間點,任何一個高級工程師或是領(lǐng)導(dǎo)都可以通過這些工具來了解員工真正在代碼上的貢獻和價值,審查進度和版本分支,進度和質(zhì)量也好把握。以筆者的經(jīng)驗,這是最好的傳遞技能的工具之一,往往有一個能人,很快就能把一批年輕人的能力帶起來。


我司一般用的是內(nèi)部開發(fā)的DTS bug tracking的工具,比較死板,總體和上述提到的最新的Git源程序管理工具、Review工具、自動化和Nightly Build、敏捷管理工具無法無縫地連接在一起。


3、知識資源的獲取


由于公司內(nèi)網(wǎng)Proxy權(quán)限問題和受限于大家英語水平的原因,大部分員工還是習(xí)慣于使用百度進行程序、庫、方法和問題的搜索。但由于共享性差,同時技術(shù)水平與美國相差比較大,所有能在百度上找到的好的資源非常有限,質(zhì)量也較差。美國軟件開發(fā)人員已經(jīng)把諸如StackOverflow、GitHub和Google作為學(xué)習(xí)和資源分享不可分割的一部分。


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。

斷路器相關(guān)文章:斷路器原理


高壓真空斷路器相關(guān)文章:高壓真空斷路器原理
行程開關(guān)相關(guān)文章:行程開關(guān)原理
網(wǎng)線測試儀相關(guān)文章:網(wǎng)線測試儀原理
漏電斷路器相關(guān)文章:漏電斷路器原理


關(guān)鍵詞: 華為

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉