通常,自愿擔任導師者一般是想做人事經理的,也就是對人員管理、對與人打交道感興趣的人?,F在Facebook硬性規定,所有可能升職為經理的候選人,必須至少做一期新兵訓練營的導師。比如我就是在升職為經理之前,被我的老板推薦去做過兩期的導師。另外,做導師一般要求是技術牛人,因為在訓練營里,新員工每天都要完成大量具體的技術任務,需要導師在必要的時候在技術問題上加以指導。導師也要有能力在結束時準確判斷新兵們的能力和所長。
截至我離開Facebook時,大概每兩周會進來一批新工程師,那么每期新兵訓練營是六周,每期有2~4個導師,每個導師要帶5~9個人,大概每周需要花10~20小時的時間。所有的導師有一個負責人,就是博斯沃斯,他還有一個助手,負責所有的導師和新員工的分配,基本上是把背景類似的(比如校友、原同事、有相同的技術興趣點等)分配給同一個導師,這樣每個小組里成員之間更好溝通。
導師需要做什么?
新員工在訓練營里60%~70%的時間要用在修改程序錯誤上,而遇到任何困難,都可以尋求導師的幫助,關鍵是方法、理念、文化的傳遞。
那么,導師具體要做些什么呢?新員工有任何問題,尤其是關于公司文化的,除了嘗試自己解決以外,都可以尋求導師的幫助或指導;導師不會在任何時候給新員工臉色看,而是會全力支持他們的學習。
首先,導師每周和被指導的新員工做“一對一”的重點討論,比如他最近的學習進展,表現如何,哪些方面做得好,哪些方面需要加強。公司要求導師對新員工給予最直接的反饋,以幫助他們迅速成長。另外一個交流的重點是對于公司內現有的哪些團隊和項目感興趣,因為新兵訓練營的最終目的就是讓他們順利融入公司,找到合適的小組。什么才算是合適的小組呢?從新員工的角度來說,就是既能發揮他的長處,又是他感興趣的;從公司的立場看,當然希望重點的項目能夠得到合適的人力分配。如果能做到雙方都滿意的匹配,就是理想狀態了。Facebook非常鼓勵員工到他感興趣但不熟悉的領域,這樣可以給一個項目帶來新鮮的視角。當然,這么做的前提是這些人是很聰明的、非常有學習能力的工程師。
其次,導師每周都要參加導師碰頭會,參加者包括所有正在訓練營的導師、博斯沃斯及其助手,會議就訓練營中遇到的一些具體問題進行討論,找出解決方案。大多數時間會花在一些表現特別出色或特別遜色的新兵身上,如果沒有這兩類人的話,會提早散會。對于表現特別出色的,導師要著重考慮哪些組最適合這些能力強悍的新兵。公司希望將最好的新兵用在最重要、最需要他們特長的崗位上。有好幾次,在一期新兵營剛開始的時候,幾個組的組長都發信要招同一個人,這樣的“搶人”就需要在碰頭會上商量如何進行引導和解決。對于表現特別遜色的,則會花時間討論如何幫助他們改變以有所起色。因為,對于通過Facebook層層面試的人,公司相信他們還是有實力的。不經過多次努力,公司不會輕易得出他們不適合Facebook這一結論。
還有,導師會分配一些代碼錯誤給新員工進行修補,這類任務通常會占到新員工60%~70%的時間。設想一下,作為一個新人,你的工作成果很快就被數以億萬計的用戶使用,多么有成就感的事情!這樣做可以給他們極大的自信。修改錯誤的過程中,新員工可以了解到相關項目的前因后果,需要跟相關程序的小組及工程師打交道,熟悉很多內部工具……這就又回到了新兵訓練營的最終目的上——幫他們找到最合適的組。
如果新工程師在修改錯誤時遇到了困難,那他是先跟自己在訓練營里的朋友互相商量,一群菜鳥找出答案來,還是直接尋求導師的幫助呢?當然,菜鳥互幫互助是最受鼓勵的,解決問題的方式往往不止一種,而是有很多,每個人都可以構想自己的方法,自己什么嘗試都沒做就直接問別人則是非常忌諱的。如果實在不行、確實需要找導師時,導師往往也不會給出直接的答案,而是告訴新人們,可以去找代碼錯誤涉及的原先的工程師聊聊,哪些人對這個部分更了解。正如中國的諺語,“授之于魚,不如授之以漁”,希望新員工能夠自己去思考這些遇到的問題,然后找出解決方法;當然,也不能在困難面前自己一個勁死磕,要學會適當尋求別人的幫助。一個簡單的原則是:至少要在相關的代碼里花了半小時而沒有任何頭緒,這時候才適合去尋找導師或者問相關的工程師。這樣你在和導師或者相關工程師請教的時候,可以在解釋完遇到的問題之后,再迅速描述你已經查看的代碼和已經排除的一些假設;當別人知道你做過功課的時候,會更加愿意幫你。不懂就問,而不是自己先鉆研的人,在Facebook不受歡迎。
訓練營里很多時候碰到的情況是,解決一個問題其實有好幾種方式,但新員工還不明白哪種方式是Facebook通用的,這個時候導師可以告訴他去代碼庫里看看其他類似的地方是怎么處理的,看以前的工程師是怎么做的,重復這種方式保持一致性一般沒有問題。所以如何高效地做代碼查看成了每個員工都要學會的技能。
如果涉及的是具體產品的技術性問題,Facebook不建議導師進行深入的幫助,因為這樣就變成我來幫助你做一件非常具體的事情了,而關鍵的是教給新員工方法、理念、文化上的東西。
如何為新員工找到合適的工作職位
導師在跟幾位需要招人的經理討論之后,就會安排大致匹配的新員工與之見面,通常是經理在做“推銷”;而新員工好比是在“面試”那些小組,最后由他決定自己想去哪個組。
為了讓合適的組找到合適的人,新兵訓練營負責日常運營的人(博斯沃斯的助手)會在每一期開始前一周把所有新兵的簡歷E-mail給有招人名額的經理。如果經理看到一個特別合適的,新兵營會配合這個經理去引起目標人選的興趣,比如說會鼓勵他參加該組的討論會,多分配該組相關的代碼錯誤修改任務等。但最后能不能成功,最大的決定來自于新兵本人。
另外,導師也會主動跟目前需要人手的那些組溝通,看自己負責指導的新員工更適合哪些項目。Facebook專門有一個頁面,叫團隊優先級頁面(Team Priority Page),負責產品技術的各個組都可以把自身的用人需求放在上面,還有一個由博斯沃斯和工程總監們組成的委員會,每兩周開一次會,討論每個組的用人優先度。博斯沃斯的強勢在這個會議上大有用處。根據這些情況,導師會跟相應的幾個經理做一些探討,比如挑幾個最重要的組當中要招人的幾個職位,看起來跟自己的所負責的新員工背景比較符合,進行一個大致的匹配,相當于導師幫新人做了一次初選。畢竟讓一個新人在完全沒有指導的情況下去了解每個組,效率太低,也不現實。導師再鼓勵新員工去跟這些備選組的人去接觸、溝通。