國內工程師學學!穀歌工程師是如何練就過硬本領的?
發布時間:2014-12-27 責任編輯:sherryyu
【導讀】yiweizaigugecongshigongchengshidepengyouweidajiadailailegugegongchengshiwenhuazhongdejigehexinyuanze,guoneigongchengshidoulaiqiaoqiaobierenshiruhelianjiuguoyingdebenlingde。tongshiyekankanguoneiwaidechajudaodiyouduoda?
我大學畢業後便加入Google的搜索質量團隊,在2006年中旬到2008年中旬在其工作,在這期間,公司的規模從8000人上漲到20000人。在我的第一個項目,我同兩位極具天賦的工程師一起工作,短短六個月,我們原型化、測試並啟動了網站的新功能,每天向數百萬用戶在google.com上展示相關搜索。作為團隊的新員工,自始至終最突出的感受是在這樣的環境中,公司如何能使像我這樣的新工程師快速成長起來。
如果這不是Google工程文化的關鍵要素,對於我們這樣規模的團隊在如此短時間內發布新特性是極為困難的。這些要素能夠讓我迅速地獲得Google的代碼庫、工具和基礎設施。它們也是使公司能夠達到今天50000雇員規模的原因。
一些前穀歌員工可能抱怨公司變得遲緩和官僚,但是不可否認它已經獲得很高的成就和很大的規模,在《財富》評選的100家最適合工作的公司中名列前茅。
這有我從穀歌工程文化中獲得的六個核心原則,你可能能夠從中獲益:

把工程資源用於共享工具和抽象概念。在早期穀歌在工具和抽象概念上大力投資,例如Protocol Buffers,MapReduce,BigTable和(he)其(qi)他(ta)在(zai)工(gong)程(cheng)中(zhong)自(zi)始(shi)至(zhi)終(zhong)都(dou)會(hui)用(yong)到(dao)的(de)東(dong)西(xi)。解(jie)決(jue)問(wen)題(ti)好(hao)的(de)態(tai)度(du)並(bing)使(shi)得(de)每(mei)個(ge)人(ren)能(neng)夠(gou)接(jie)受(shou)已(yi)經(jing)帶(dai)來(lai)巨(ju)大(da)的(de)收(shou)益(yi)。每(mei)個(ge)團(tuan)隊(dui)都(dou)花(hua)費(fei)較(jiao)少(shao)的(de)心(xin)理(li)周(zhou)期(qi)選(xuan)擇(ze)使(shi)用(yong)哪(na)個(ge)工(gong)具(ju),專(zhuan)注(zhu)於(yu)工(gong)具(ju)的(de)團(tuan)隊(dui)能(neng)夠(gou)更(geng)關(guan)注(zhu)提(ti)升(sheng)工(gong)程(cheng)生(sheng)產(chan)力(li),和(he)改(gai)善(shan)已(yi)經(jing)使(shi)用(yong)的(de)工(gong)具(ju)和(he)服(fu)務(wu)。每(mei)個(ge)團(tuan)隊(dui)可(ke)能(neng)使(shi)用(yong)截(jie)然(ran)不(bu)同(tong)的(de)工(gong)具(ju)鏈(lian),這(zhe)也(ye)意(yi)味(wei)著(zhe)當(dang)你(ni)學(xue)習(xi)了(le)基(ji)本(ben)單(dan)元(yuan)結(jie)構(gou)後(hou),更(geng)容(rong)易(yi)理(li)解(jie)許(xu)多(duo)項(xiang)目(mu)背(bei)後(hou)的(de)設(she)計(ji)。這(zhe)個(ge)方(fang)法(fa)的(de)負(fu)麵(mian)影(ying)響(xiang)就(jiu)是(shi)有(you)些(xie)時(shi)候(hou)你(ni)可(ke)能(neng)感(gan)覺(jiao)你(ni)的(de)case是被強行塞入一個特別的良好支持的工具,即使它不是最好的。
在zai新xin工gong程cheng師shi培pei訓xun中zhong投tou資zi可ke重zhong複fu使shi用yong的de訓xun練lian材cai料liao。我wo在zai穀gu歌ge能neng夠gou迅xun速su變bian得de如ru此ci高gao產chan的de一yi個ge原yuan因yin是shi公gong司si在zai培pei訓xun材cai料liao上shang麵mian花hua了le大da力li去qu投tou資zi,其qi稱cheng之zhi為weiCodelabs,Codelabsbaokuolegongsidehexinchouxiangmoxing,jieshitamenweishenmebeishejichulai,tuchudaimakudexiangguanpianduan,yijitongguoshixianlianxiyanzhenglijietamen。ruguomeiyouta,wojianghuihuagengduodeshijianlaixuexigezhongwoxuyaoqulejiedegezhongjishu,zheyeyiweizhewodeduiyuanyaohuafeigengduodejinglixiangwoqujieshitamen。wozaigugezheyangjijidejingli,qiangyoulideyingxianglewozaihoulaideQuora新人培訓過程中大力推崇Codelabs使用的決定。
標準化編碼約定。每個關於空格、大小寫、行長度、是shi否fou使shi用yong智zhi能neng指zhi針zhen等deng約yue定ding,可ke能neng似si乎hu是shi不bu重zhong要yao的de,但dan是shi到dao了le穀gu歌ge這zhe樣yang的de大da規gui模mo時shi會hui帶dai來lai巨ju大da的de影ying響xiang。我wo不bu是shi第di一yi次ci承cheng認ren,當dang代dai碼ma校xiao驗yan人ren員yuan挑tiao刺ci我wo的de代dai碼ma令ling我wo感gan到dao十shi分fen不bu愉yu快kuai,就jiu因yin為wei我wo沒mei有you正zheng確que的de縮suo進jin或huo在zai行xing長chang度du超chao出chu了le規gui定ding的de兩liang個ge字zi符fu。但dan是shi因yin為wei大da家jia都dou遵zun循xun同tong樣yang的de約yue定ding,使shi得de瀏liu覽lan代dai碼ma變bian得de大da大da容rong易yi。當dang更geng換huan團tuan隊dui或huo在zai跨kua部bu門men項xiang目mu中zhong工gong作zuo時shi,這zhe幾ji乎hu沒mei有you額e外wai支zhi出chu去qu學xue習xi新xin團tuan隊dui的de約yue定ding。當dang團tuan隊dui規gui模mo很hen小xiao時shi,約yue定ding是shi那na種zhong很hen容rong易yi被bei忽hu視shi的de東dong西xi,但dan是shi在zai代dai碼ma和he團tuan隊dui規gui模mo逐zhu漸jian壯zhuang大da在zai這zhe方fang麵mian越yue來lai越yue做zuo出chu改gai變bian,這zhe樣yang你ni事shi實shi上shang希xi望wang從cong始shi至zhi終zhong都dou是shi一yi致zhi。如ru果guo可ke能neng早zao期qi在zai約yue定ding一yi致zhi性xing上shang保bao持chi一yi致zhi,或huo者zhe使shi用yong穀gu歌ge開kai源yuan的de風feng格ge指zhi南nan。
通過代碼複審(Code Review)提(ti)升(sheng)代(dai)碼(ma)質(zhi)量(liang)。對(dui)每(mei)次(ci)改(gai)變(bian)進(jin)行(xing)代(dai)碼(ma)複(fu)審(shen)減(jian)緩(huan)了(le)迭(die)代(dai)更(geng)新(xin)的(de)速(su)度(du),但(dan)是(shi)提(ti)升(sheng)了(le)代(dai)碼(ma)質(zhi)量(liang),新(xin)工(gong)程(cheng)師(shi)收(shou)到(dao)反(fan)饋(kui)後(hou),他(ta)們(men)需(xu)要(yao)迅(xun)速(su)的(de)采(cai)取(qu)最(zui)佳(jia)的(de)實(shi)踐(jian)並(bing)專(zhuan)注(zhu)於(yu)公(gong)認(ren)的(de)代(dai)碼(ma)質(zhi)量(liang)等(deng)級(ji)。總(zong)體(ti)的(de)代(dai)碼(ma)質(zhi)量(liang)越(yue)高(gao),也(ye)就(jiu)意(yi)味(wei)著(zhe)新(xin)工(gong)程(cheng)師(shi)在(zai)模(mo)仿(fang)周(zhou)圍(wei)人(ren)員(yuan)的(de)代(dai)碼(ma)同(tong)時(shi),初(chu)期(qi)就(jiu)會(hui)寫(xie)出(chu)更(geng)加(jia)簡(jian)潔(jie)的(de)代(dai)碼(ma)。因(yin)此(ci),代(dai)碼(ma)複(fu)審(shen)有(you)助(zhu)於(yu)公(gong)司(si)在(zai)較(jiao)大(da)規(gui)模(mo)上(shang)位(wei)置(zhi)較(jiao)高(gao)的(de)軟(ruan)件(jian)質(zhi)量(liang)。
用正確數據解決很多問題。穀歌研發主管Peter Norvig經常談到在解決複雜問題上“不合理的數據有效性”。正確的數據能夠幫助你了解用戶,劃分辦公室政治,解決爭論,並讓你跟上進度。開發日誌和數據基礎工具,如Sawzall和MapReduce,使穀歌的工程師從大量數據中篩選出來變為可能。
自動化測試來衡量你的代碼。穀歌有十分強烈的單元測試文化,“廁所測試”就(jiu)是(shi)一(yi)個(ge)例(li)子(zi),差(cha)不(bu)多(duo)我(wo)每(mei)做(zuo)一(yi)次(ci)代(dai)碼(ma)的(de)改(gai)動(dong)都(dou)伴(ban)隨(sui)一(yi)個(ge)單(dan)元(yuan)測(ce)試(shi),代(dai)碼(ma)複(fu)審(shen)員(yuan)將(jiang)會(hui)嚴(yan)格(ge)地(di)檢(jian)查(zha)他(ta)們(men)。這(zhe)讓(rang)開(kai)發(fa)變(bian)慢(man),但(dan)它(ta)也(ye)意(yi)味(wei)著(zhe)成(cheng)百(bai)上(shang)千(qian)的(de)工(gong)程(cheng)師(shi)可(ke)以(yi)改(gai)變(bian)代(dai)碼(ma)庫(ku)中(zhong)的(de)同(tong)一(yi)部(bu)分(fen)而(er)不(bu)會(hui)犧(xi)牲(sheng)過(guo)多(duo)的(de)質(zhi)量(liang)和(he)可(ke)靠(kao)性(xing)。穀(gu)歌(ge)以(yi)同(tong)樣(yang)的(de)方(fang)式(shi)在(zai)共(gong)享(xiang)工(gong)具(ju)上(shang)進(jin)行(xing)投(tou)入(ru),它(ta)也(ye)會(hui)共(gong)享(xiang)測(ce)試(shi)框(kuang)架(jia),並(bing)通(tong)過(guo)最(zui)好(hao)的(de)測(ce)試(shi)實(shi)踐(jian)讓(rang)大(da)家(jia)寫(xie)測(ce)試(shi)變(bian)得(de)更(geng)容(rong)易(yi)。
當我後來在Ooyala和Quora幫bang助zhu他ta們men構gou建jian團tuan隊dui和he產chan品pin時shi,穀gu歌ge的de工gong作zuo強qiang烈lie地di讓rang我wo思si考kao,在zai哪na些xie地di方fang什shen麼me會hui形xing成cheng良liang好hao的de工gong程cheng文wen化hua。然ran而er,在zai穀gu歌ge這zhe樣yang規gui模mo的de公gong司si工gong作zuo好hao並bing不bu一yi定ding意yi味wei著zhe會hui在zai不bu同tong機ji構gou的de不bu同tong發fa展zhan時shi期qi的de工gong作zuo同tong樣yang會hui好hao。每mei個ge工gong程cheng決jue策ce都dou包bao括kuo一yi係xi列lie權quan衡heng,但dan是shi穀gu歌ge工gong程cheng文wen化hua提ti供gong了le一yi部bu分fen權quan衡heng,而er你ni可ke以yi從cong這zhe裏li開kai始shi。
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 築基AI4S:摩爾線程全功能GPU加速中國生命科學自主生態
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索




