現在HR和獵頭也懂得,挖程序員不能光講錢和項目了,多少號稱工程師文化的公司花開北京上海,可是到底什么是“工程師文化”?誰能給一個準確的定義?
有人說,什么文化就是什么說了算的意思,工程師文化就是工程師說了算。這未免也太膚淺了。也有人說,工程師文化就是自由上下班、松散管理,做喜歡的項目。我想這依然是不恰當的,這些人只說出了工程師文化給工程師帶來的權利,更何況這種對權利的認定還是片面的。
工程師文化的核心是什么:價值觀。但是,它不止價值觀。我在這篇文章中提到過工程師文化:
首先,這個世界上大部分軟件公司采用工程師文化的模式來運作的話,都會死得很慘。
其次,這個世界上大部分號稱工程師文化的軟件公司,都只是號稱號稱而已。
最后,這個世界上大部分成功和偉大的軟件公司,都不是工程師文化的。
下面我談一談我眼中的工程師文化應該是怎樣的,每個人的價值取向不同,當然并不是說它一定好,不過它真不容易玩得轉。之后你會明白,世界上能有真正所謂“工程師文化”的企業寥寥無幾。
Just Do It
“身體力行”。我把它放在第一條的位置。什么是身體力行?
創始人Mary Wagner要親自使用玫琳凱化妝品,以保證質量一流;
Zuckerberg親自評審Facebook的代碼;
Linus說:“Talk is cheap, show me the code.”。
但是現在多少管理課程都在這樣給學生洗腦:“克服親力親為的毛病”,“走出親自去做的誤區”。工程師文化的企業中,管理者又該扮演一個怎樣的角色?企業的核心人才不應是這些指點江山的指揮者,而是腳踏實地的實踐者,是那些動手去做的工程師,并且是那些習慣于馬上去做的人。“馬上去做”往往可以誕生許多創新的點子,因為這些點子轉瞬即逝。
在Google流傳著這樣一個小故事:每周三在二樓的鐵柜上不定期地都會放置一些帶有Google徽標的T恤,大家都可以拿取,很快就會拿完。后來有人注意到這個鐵柜對面安裝了攝像頭,索性寫了一個分析攝像頭監控圖像的軟件,判斷這個鐵柜的門是不是開著的,如果是,多半就是新T恤又到了,發送郵件到“T恤警報器”的群組中,告訴大家快去搶吧。這是一種帶有黑客色彩的實踐文化,少啰嗦、先做事。
硅谷的許多偉大的公司都是從車庫里的電腦前開始的,而不是拿出一筆錢,等來一票人然后坐等發財。很多人只看到了硅谷工程師光鮮的一面(比如薪水要高出美國其它地區20%左右),殊不知他們的平均工作時間遠遠超過其他地區的工程師。所以說,工程師文化,不是只有權力的一面,它對工程師的要求,是每個人都要足夠能干,都要做許多的事。
足夠小的團隊
Facebook自己總結的工程師文化包括這三點:
Move Fast and Break Things
Be Bold and Innovative
尤其我要說一下第二點,在Facebook,多數功能系統都由1到3位工程師組成的小團隊完成。平均下來,Facebook每位工程師(注意我說的是“工程師”,不是任意員工)服務120萬名用戶,Google的這個數則是190萬,Amazon是96萬,微軟是75萬。
團隊多小才算足夠小?有一種說法叫“Pizza Team”,換言之一兩張披薩餅就可以喂飽的團隊,你說能有多少人?但是團隊小并不意味著做的事情小,上面的例子已經說到了。
小團隊的好處,在于靈活、快速,極大減少溝通和交流的成本。不用投票,少發郵件多喊話,說做就做。
37Signals是另一家把小團隊做到極致的公司,整個公司的工程師遍布全世界,但是也只有35人而已,讓全世界的人一起工作,做出偉大的產品,一定要興師動眾嗎?
工程師的決策權
首當其沖的是產品的決策權。產品的決策權反映了公司對于工程師對產品觀點的認可,這才是最重要的。
在華為,市場部門說了算。市場說什么時候要,什么時候就得給做出來,項目計劃全部都是倒排的,程序員基本沒有什么可以商量的余地。我經歷過這樣一則事情,有一位客戶發了一封郵件,大致是說要做某某功能該有多好啊,然后,然后市場部門一下需求,研發團隊就去做了,過了幾個月,該功能上線,客戶驚訝地說:“我怎么不記得有這事啊?”。
在騰訊,產品經理是老大。網上有一個騰訊“5000個產品經理”的傳聞,實在覺得夸張,不知是真是假,但是我的在騰訊呆過的同事,則告訴了我不少關于產品經理話語權的趣事。產品經理具有很大的話語權,從產品設計到項目進度安排,是整個工作的協調人,掌控全局。
要讓工程師去決策產品做成什么樣子,工程師必須能夠直接和客戶接觸,否則主人翁意識無從談起。這也是為什么大部分工程師文化的公司都是互聯網公司,因為互聯網產品對于工程師來說,就在身邊,感觸豐盈,理念和想法就很多。
另一方面,工程師文化的公司往往會做出簡潔的產品來,因為工程師是喜歡優雅和簡潔的群體。
在Amazon,每年工程師們都會投票,投那些最爛的項目和工具,投出來位列Top N的幾個,都要限期改掉或者廢掉(雖說Amazon并不能完全算一家工程師文化的公司,但是很接近了)。這件事情就是工程師定的,而不是市場營銷人員。
當然,決策權方面遠不止產品。還包括部分進度、產品特性的優先級等等。不要覺得不可思議,工程師是去最終落實產品的那個人,如果他都沒有話語權,那才不可思議。
Geek的工作環境
這部分的觀點連我自己都沒有百分百想清楚,但是這幾點是毋庸置疑的:
代碼共享。連查看別的團隊的代碼都要申請權限的公司就別提什么工程師的文化了。
無障礙訪問互聯網。不解釋。
時間支配有相當的自由度。你可以關注過程,也可以關注結果,但是重要的是關注人本身和做的事,而不是那些制造障礙和降低生產力的規矩。上下班刷卡制度就是這樣的一個規矩。另外,平均下來需要有一定比例的時間要留給工程師自己安排,例如在Google這個數是20%。優秀的工程師絕對知道自己該做些什么。一些偉大的產品都是從這樣的時間中誕生的。
允許選擇喜歡的項目,甚至選擇喜歡的產品經理。這樣的選擇并不是無條件的,但這卻是一件雙贏的事情。
平等的地位。你是希望有人和你討論問題,還是希望有人附庸在你的話后面?一派和諧是最糟糕的結果。我們需要有爭論,項目中需要有足夠多的不同意見,不要遮遮掩掩的,直接指出,但是對事不對人,不用在乎你的等級他的頭銜,這就是平等。
合適的工作環境。合適的環境可以明顯提高工作效率。興許沒有必要像《軟件隨想錄》里描述的那樣理想,但是我想要安靜的環境、兩個顯示器以及一個高度合適的椅子,那就可以很快得到。
寬限的著裝要求。這一條也列在這里?對,你可以穿著拖鞋去上班,這對曾經的我來說是不可想象的。
本質上,這幾條都可以寫成“對工程師的信任和尊重”。如果這幾點都做不到的話,對于今天的話題,就先省省吧。我經歷過不少背道而馳的故事。比如從互聯網上下載一個jar包都要申請權限,比如改一點代碼需要層層審批,再比如想看別人寫的代碼都需要偷偷摸摸的……
尋找最好的人才
文化不是領導說了算的,而是慢慢醞釀達成的。招聘不合適的人,就會對工程師文化造成污染,如果不幸招入這樣的人,這些人必須清除出去,例如離職或者讓他們做非工程師的事情等等。這絕非危言聳聽,Google就做過這樣的事情。
然而,認可和實踐工程師文化只是招聘的一個先決條件。更重要的時候,必須招能干和優秀的人。
來Amazon通常要經過2輪的電話面試和5輪的face-to-face面試,對于所有的面試官中,有一名經驗豐富的面試官擁有Bar Raiser的認證,目的是為了保證招聘的人才必須要保持在當前團隊的工程師中前50%而設定的,Bar Raiser擁有最終否決權,只要他否定的人,其他人全部同意也沒用。
在Facebook,新入職的工程師大概會進行一個4-6周的Boot Camp訓練來熟悉項目,修補bug,以及學習來自資深工程師的訓練課程,大概10%的新兵無法完成這個過程被勸退。
工程師是一名實踐者,這就意味著他要做各種各樣的事情,我知道有的公司分門別類了各種職位,SA、SE、QA、SDE、SQA……數不勝數,有的壓根兒都不知道是做什么的,甚至有的公司把軟件工程師拆分成編碼崗位和設計崗位都分開,但是對于工程師文化的公司來說,工程師必須要多能。
多能的直接原因來自于小團隊,小團隊意味著你沒有辦法去分配太多的角色,你可以擅長做UI,你可以擅長DBA,但是一個寫C++代碼人照樣可以去畫界面……我想你懂我的意思。
另外一個重要的條件是候選人的態度。對技術的態度、對工作的態度,以及對生活的態度。寬限的文化下可以誕生優秀的產品,也可以培養一票懶人,這就是為什么任何制度都要和遵守制度的人相匹配。沒有這樣的人,你玩不轉工程師文化。
當然,工程師文化遠不止上面說的這些,但是在我看來這些是工程師文化里核心價值觀的其中幾個體現。
最后,我想補充一點,一家公司的文化會隨著公司的擴張而變味,且看2005年的百度,先別談哪些方面是符合工程師文化的,起碼敢說出這樣工程師范兒的話來,可是現在呢?(在2009年中國頭號Blogger、著名互聯網評論家keso這樣說:“今天的百度,據我所得到的信息來看,早就不是上市前那個工程師樂園了。今天的百度,規模比三四年前大了差不多10倍,員工的業績壓力很大,對大多數員工來說,百度跟其他公司沒差別。”)
-
工程師
+關注
關注
59文章
1566瀏覽量
68441
發布評論請先 登錄
相關推薦
評論