Google 員工經常面臨一個典型的兩難困境:因為許多同事早早離開 Google 去融資、創業、上市、發財,像我這樣安心在 Google 工作了十年的普通工程師就變成了另類——當面問我“為什麼還沒離開 Google”的人,他們眼睛裡鄙夷的目光藏都藏不住;反過來,在家人眼中,我打算離開 Google 的舉動無異於自己砸碎金飯碗,放著穩定的收入和豐厚的福利不要,非要和不確定性為伍。
再比如,像 MapReduce、Bigtable、TensorFlow 之類由 Google 原創、對業界影響深遠的技術,在 Google 內部可不僅僅是身外的工具,它們都是 Google 工程師這個大集體的作品和驕傲。因為大家都是主人,對哪些東西不爽,可以去鼓搗源代碼,可以去提交自己的補丁或者新功能,甚至推翻重做。
別小瞧這推翻重做,雖然很難很難,因為你得一邊說服老板和用戶,一邊找到足夠的開發人手,但事實上, Google 內部重新發明一遍、兩遍、三遍的框架、工具、庫、接口、服務比比皆是。一言不合就動手做個新版本、新系統,這毛病既帶來數不清的流程混亂,也帶來一山又比一山高的良性競爭——表面的混亂之下,良性競爭引發的技術飛躍常常超出想象。
在 Google,工程師有好幾萬,不能說每個人都渴望做技術的主人,但躊躇滿志的大有人在。因為 Google 走在技術最前沿,有追求的工程師確實沒臉當個純粹的技術追隨者。當然,我的意思不是說 Google 裡沒人去做那些不那麼酷的“苦力活兒”,而是說大多數人都有個爭強好勝的心態,即便是做相對簡單的技術工作,也時常會想想怎麼能做出世界一流的效果來。
說到管理,在 Google 帶技術團隊的其實都苦哈哈的。我就先後兩次把團隊交給別人帶,自己樂得去做些單純的代碼工作。道理很簡單,頭銜是 Manager,可你沒法高高在上指手畫腳,Google 最好的團隊帶頭人都是沖在第一線帶著大家一起幹,除了主動包攬大家不想幹的臓活、累活、雜活之外,還要做管理者必須的非技術工作,比如給每個人寫評語、定獎金,幫每個人申請升職,跟心理負擔重的談心……