寻找优秀的开发人员
那些偉大的開發人員都在哪里?
當你第一次嘗試填補空缺職位時,如果你像大多數人一樣,你會投放一些廣告,也許瀏覽大型在線板,并獲得大量簡歷。
當你經歷它們時,你會想,“嗯,這可能行得通”,或者,“不可能!”或者,“我想知道這個人是否能被說服搬到布法羅。不會發生的,我保證,永遠不會發生的是,你說,“哇,這個人太棒了!我們必須擁有它們!事實上,你可以瀏覽數千份簡歷,假設你知道如何閱讀簡歷,這并不容易,我將在周五談到這一點,但你可以瀏覽數千份工作申請,坦率地說,你從未見過一個偉大的軟件開發人員。沒有一個。
這就是發生這種情況的原因。
偉大的軟體開發人員,實際上是各個領域最優秀的人,從來沒有在市場上。
一個普通的優秀軟件開發人員在他們的整個職業生涯中總共會申請四份工作。
優秀的大學畢業生被一位與行業有聯系的教授拉去實習,然后他們從那家公司獲得早期工作機會,從不費心申請任何其他工作。如果他們離開了那家公司,通常是和朋友一起去一家創業公司,或者跟隨一個偉大的老板去另一家公司,或者因為他們決定他們真的想從事Eclipse的工作,比如說,Eclipse很酷,所以他們在BEA或IBM尋找一份Eclipse工作,然后他們當然會得到它,因為他們很聰明。
如果你很幸運,如果你真的很幸運,他們曾經出現在公開的就業市場上,比如說,當他們的配偶決定接受安克雷奇的醫學實習時,他們實際上將他們的簡歷發送到他們認為是他們想在安克雷奇工作的幾個地方。
但在大多數情況下,偉大的開發人員(這幾乎是一種重言式)是,呃,偉大的,(好吧,這是一個重言式),而且,通常,未來的雇主會很快認識到他們的偉大,這意味著,基本上,他們可以在他們想去的任何地方工作,所以他們老實說不會發送很多簡歷或申請很多工作。
這聽起來像是你想雇用的那種人嗎?它應該。
這條規則的推論——偉大的人永遠不會出現在市場上的規則——是壞人——嚴重不合格的人——在市場上出現了很多。他們總是被解雇,因為他們無法完成自己的工作。他們的公司失敗了——有時是因為任何愿意雇用他們的公司可能也會雇用很多不合格的程序員,所以這一切都導致了失敗——但有時是因為他們實際上太不合格了,以至于他們毀了公司。是的,它發生了。
謝天謝地,這些病態的不合格的人很少能找到工作,但他們確實一直在申請,當他們申請時,他們會去 Monster.com,一次檢查 300 或 1000 個工作,試圖贏得彩票。
從數字上看,優秀的人非常罕見,他們從未進入過就業市場,而不稱職的人,即使他們同樣罕見,在他們的整個職業生涯中都申請了數千份工作。所以現在,Sparky,回到你從Craigslist上得到的那一大堆簡歷。他們中的大多數都是你不想雇用的人,這有什么奇怪的嗎?
我想,精明的讀者會指出,我遺漏了迄今為止最大的群體,即堅實、能干的人。他們在市場上比優秀的人多,但比不稱職的人少,總而言之,他們會在你的 1000 份簡歷中出現少量,但在大多數情況下,現在幾乎每個帕洛阿爾托的招聘經理都有 1000 份簡歷,他們的辦公桌上有 970 份簡歷,來自申請帕洛阿爾托每份工作的 970 名不稱職的人中的少數人, 而且可能是一輩子的,只有 30 份簡歷值得考慮,其中可能很少有人是偉大的程序員。好吧,也許甚至沒有一個。我們將看到,弄清楚如何在大海撈針中找到這些針是可能的,但并不容易。
我還能得到它們嗎?
是的!
好吧,也許吧!
或者,這要看情況!
與其將招聘視為“收集簡歷,篩選簡歷”的過程,不如將其視為“追蹤獲獎者并讓他們與您交談”的過程。
我有三種基本方法可以解決這個問題:
- 去山上
- 實習
- 建立自己的社區*
(“建立自己的社區”帶有一個小小的星號,意思是“難”,就像喬治·丹齊格(George Dantzig)解決的著名數學問題一樣,因為他來得太晚了,聽說它應該是無法解決的)。
你也許也可以想出自己的想法。我只想談談三個對我有用的方法。
到山上去,哎呀!
想想你想雇用的人在哪里閑逛。他們參加什么會議?他們住在哪里?他們屬于哪些組織?他們閱讀哪些網站?與其在 Monster.com 上廣撒求職網,不如使用 Joel on Software 招聘板,將您的搜索限制在閱讀本網站的聰明人身上。參加非常有趣的技術會議。偉大的 Mac 開發人員將參加 Apple 的 WWDC。優秀的Windows程序員將在Microsoft的PDC上。還有很多開源會議。
尋找當天最熱門的新技術。去年是 Python;今年是 Ruby。參加他們的會議,在那里你會發現對新事物感到好奇并總是對改進感興趣的早期采用者。
在走廊里溜達,與你遇到的每個人交談,參加技術會議并邀請演講者出去喝啤酒,當你找到一個聰明的人時,砰!——你開始進入全面的調情和奉承模式。“噢噢,太有趣了!”你說。“哇,我簡直不敢相信你這么聰明。而且也很帥。你說你在哪里工作?真?那里?嗯嗯,你不覺得你可以做得更好嗎?我想我的公司可能正在招聘......”
這條規則的必然結果是避免在通用的大型招聘網站上做廣告。有一年夏天,我無意中使用 MonsterTRAK 為我們的暑期實習做廣告,它提供了支付一點額外費用的選項,讓美國每所學校的學生都能看到實習機會。這導致了數百份簡歷,其中沒有一份通過第一輪。我們最終花了一大筆錢來獲得大量簡歷,這些簡歷幾乎沒有機會找到我們想要雇用的那種人。幾天后,MonsterTRAK 是簡歷的來源這一事實讓我認為候選人可能不適合我們。同樣,當 Craigslist 剛起步時,互聯網行業的早期采用者實際上只是訪問過它,我們通過在 Craigslist 上做廣告找到了很棒的人,但今天,幾乎每個中等計算機知識的人都使用它,導致太多簡歷的針頭大海撈針比率太低。
實習
抓住那些從未進入就業市場的偉人的一個好方法是在他們意識到有就業市場之前就得到他們:當他們上大學時。
一些招聘經理討厭雇用實習生的想法。他們認為實習生是未成型的,技能不足。在某種程度上,這是真的。實習生不如有經驗的員工有經驗(不。真的嗎?!你將不得不對它們進行更多的投資,而且它們需要一些時間才能跟上速度。關于我們領域的好消息是,真正偉大的程序員往往在10歲時就開始編程。當同齡人都在跑來跑去玩“足球”(這是許多不會對計算機編程的孩子玩的游戲,涉及用腳踢一個叫做“球”的球形物體(我知道,這聽起來很奇怪)),他們在父親的家庭辦公室里試圖讓Linux內核進行編譯。他們沒有在操場上追逐女孩,而是在Usenet上陷入了關于沒有實現Haskell式類型推理的編程語言的徹底墮落的激烈戰爭。他們沒有在他們的車庫里組建樂隊,而是實施了一個很酷的黑客,這樣當他們的鄰居通過他們的開放接入 WIFI 點竊取帶寬時,網絡上的所有圖像都會顛倒過來。哇哈哈哈哈!
所以,與法律或醫學領域不同,在軟件開發方面,當這些孩子在大學二年級或三年級時,他們已經是相當優秀的程序員了。
幾乎每個人都申請一份工作:他們的第一份工作,大多數孩子認為等到最后一年再擔心這個問題是可以的。事實上,大多數孩子都沒有那么有創造力,他們只會在實際有某種校園招聘活動的情況下申請工作。好大學的孩子可以從校內雇主那里獲得足夠的好工作選擇,以至于他們很少費心去接觸那些懶得來校園的雇主。
你可以參與這種瘋狂,在校園里招募,這是一件好事,不要誤會我的意思,或者你可以顛覆它,試圖在他們畢業前一兩年得到優秀的孩子。
我在 Fog Creek 以這種方式取得了很大的成功。這個過程從每年九月開始,那時我開始利用我所有的資源來追蹤全國最優秀的計算機科學學生。我給幾百個計算機科學系寄信。我追蹤了當時距離畢業還有兩年時間的計算機科學專業的名單(通常你必須認識系里的人,教授或學生,才能找到這些名單)。然后我給每一個我能找到的CS專業的學生寫一封私人信。不是電子郵件,而是一張寫在霧溪信箋上的紙,我用實際的墨水在自己簽名。顯然,這是罕見的,它引起了很多關注。我告訴他們我們有實習機會,并親自邀請他們申請。我給 CS 教授和 CS 校友發送電子郵件,他們通常有某種 CS 專業的郵件列表,他們會將其轉發到該列表。
最終,我們收到了很多這些實習的申請,我們可以挑選作物。在過去的幾年里,我每次實習都會收到 200 份申請。我們通常會將這堆申請減少到大約 10 個(每個職位空缺),然后打電話給所有這些人進行電話面試。在通過電話面試的人中,我們可能會有兩三個人飛到紐約進行面對面的面試。
到面對面面試時,我們很有可能想要雇用這個人,以至于是時候開始全面招聘了。他們在機場迎接他們,一位穿制服的豪華轎車司機拿起他們的行李,把他們帶到他們的酒店,這可能是他們一生中見過的最酷的酒店,就在時尚區的中間,模特們隨時進進出出,復雜的浴室裝置可能是現代藝術博物館永久收藏的一部分, 但祝你好運,試圖弄清楚如何刷牙。在酒店房間里等候時,我們留下了一個招待套餐,里面有一件T恤,由Fog Creek工作人員建議的紐約徒步之旅,以及2005年暑期實習生的DVD紀錄片。房間里有一臺DVD播放機,所以他們中的很多人都看了以前的實習生玩得很開心。
經過一天的面試,我們邀請學生在紐約停留幾天,如果他們想看看這個城市,費用由我們承擔,然后豪華轎車在他們的酒店接他們,然后把他們送回機場回家。
盡管只有大約三分之一的申請人進入了面對面的面試階段,但通過面試的申請人必須獲得積極的體驗,這一點非常重要。即使是那些沒有成功的人,也會認為我們是一個優雅的雇主,并告訴他們所有的朋友他們在大蘋果的一家豪華酒店里住得有多開心,這讓他們的朋友在明年夏天申請實習,哪怕只是為了旅行的機會。
在實習期間,學生們通常會開始想,“好吧,這是一份不錯的暑期工作和一些很好的經驗,也許,只是也許,它會帶來一份全職工作。我們比他們領先一點。我們將利用暑假來決定是否要他們成為全職員工,他們將利用暑假來決定是否要為我們工作。
所以我們給他們真正的工作。苦功。我們的實習生總是在生產代碼上工作。有時他們正在研究公司里最酷的新東西,這可能會讓正式員工有點嫉妒,但這就是生活。有一年夏天,我們有一個由四名實習生組成的團隊從頭開始構建一個全新的產品。那次實習在幾個月內就收回了成本。即使他們不是在構建新產品,他們也在開發真正的代碼,并具有他們完全個人負責的一些主要功能領域(當然,有經驗豐富的導師來幫忙)。
然后我們確保他們玩得很開心。我們舉辦派對和開放日。我們讓他們在當地一個相當不錯的宿舍里免費住宿,在那里他們可以結交來自其他公司和學校的朋友。我們每周都會有一些課外活動或實地考察:百老匯音樂劇(今年他們為Q大道瘋狂)、電影開幕式、博物館參觀、乘船游覽曼哈頓、洋基隊比賽,信不信由你,今年最喜歡的事情之一就是去巖石之巔旅行。我的意思是,它只是一幢高樓,你從曼哈頓市中心的屋頂上出去。你不會認為這將是一次如此令人敬畏的體驗。但事實確實如此。Fog Creek 的一些員工也參加了每項活動。
在暑假結束時,總有一些實習生說服我們,他們是我們必須雇用的真正優秀的程序員。請注意,不是所有的人,有些只是我們愿意傳承的優秀程序員,而另一些人則在其他地方會很棒,但在 Fog Creek 則不然。例如,我們是一家相當自主的公司,沒有很多中層管理人員,人們被期望完全自我驅動。從歷史上看,這種情況發生過幾次,暑期實習生在有人指導他們的情況下會很棒,但在霧溪,他們得不到足夠的指導,會陷入困境。
無論如何,對于我們真正想雇用的人,等待是沒有用的。我們提前提供一份全職工作,條件是他們畢業。這是一個很好的提議。我們希望他們能夠回到學校,與朋友比較筆記,并意識到他們的起薪比任何人都高。
這是否意味著我們多付了錢?一點也不。你看,第一年的平均工資必須考慮到這個人無法解決的一定程度的風險。但我們已經試鏡了這些孩子,他們沒有不出色的風險。我們知道他們能做什么。因此,當我們雇用他們時,我們比任何其他只面試過他們的雇主都擁有更多的信息。這意味著我們可以付給他們更多的錢。我們有更好的信息,所以我們愿意比沒有這些信息的雇主支付更多的費用。
如果我們把工作做好了,而且我們通常做得很好,那么此時實習生就會完全放棄并接受我們的提議。有時需要更多的說服力。有時他們想留下他們的選擇,但 Fog Creek 的出色報價確保了他們第一次必須在早上 8:00 起床并穿上西裝去面試 Oracle,當鬧鐘響起時,他們很有可能會說“為什么我早上 8:00 起床并穿上西裝去面試 Oracle,而我已經有一份出色的工作在霧溪等我?而且,我希望,他們甚至不會費心去接受采訪。
順便說一句,在我繼續之前,我需要澄清一些關于計算機科學和軟件開發實習的事情。在這個時代,在這個國家,人們完全期望這些是帶薪實習,而且薪水通常非常有競爭力。雖然無薪實習在從出版到音樂等其他領域很常見,但我們每周支付 750 美元,外加免費住宿、免費午餐、免費地鐵通行證,更不用說搬遷費用和所有福利了。美元金額略低于平均水平,但它包括免費住房,因此它比平均水平好一點。我想我會提到這一點,因為每次我在我的網站上談論實習時,都不可避免地有人感到困惑,認為我在利用奴隸勞動或其他東西。你在那里——年輕的鞭打者!給我來一杯冰冷的橙汁,手工榨制,讓它變得活潑!
實習計劃為優秀員工創造了一個管道,但這是一個相當長的管道,很多人在這個過程中迷失了方向。我們基本上計算出,我們將不得不為每一名全職員工雇用兩名實習生,如果你雇用的實習生在學校還剩一年,那么從你開始招聘到他們出現在全職工作的第一天之間,還有兩年的管道。這意味著我們每年夏天都會雇用幾乎與辦公室實際容納的實習生數量一樣多。前三個暑假,我們試圖將實習計劃限制在還剩一年的學生身上,但今年夏天我們終于意識到我們錯過了一些優秀的年輕學生,所以我們向大學任何一年的學生開放了該計劃。信不信由你,我什至在想辦法讓高中生來這里,也許放學后用大學的錢來設置電腦,只是為了開始與下一代偉大的程序員建立聯系,即使它變成了一個六年的管道。我的視野很長。
建立社區(*困難)
這里的想法是創建一個由志同道合的聰明開發人員組成的大型社區,他們以某種方式聚集在您的公司周圍,這樣您就可以在每次有職位空缺時自動聯系受眾。
說實話,這就是我們如何找到這么多偉大的霧溪人:通過我的個人網站,你現在正在閱讀的網站。這個網站上的主要文章可以被多達一百萬人閱讀,其中大多數是軟件開發人員。由于有大量的自我選擇的受眾,每當我在主頁上提到我正在尋找某人時,我通常會得到一大堆非常好的簡歷。
這個類別帶有星號,意思是“難”,因為我覺得我給你的建議是,“要贏得選美比賽,(a)變得美麗,(b)參加選美比賽。那是因為我真的不確定這個網站為什么或如何變得如此受歡迎,或者為什么閱讀它的人是最好的軟件開發人員。
我真的希望我能在這里為您提供更多幫助。德里克·波瓦澤克(Derek Powazek)寫了一本關于這個主題的好書(社區設計)。許多公司嘗試了各種博客策略,不幸的是,他們中的很多都未能建立任何類型的受眾,所以我只能說,對我們有用的東西可能對你有用,也可能對你不起作用,我不確定你能做些什么。
員工推薦:潮濕時可能會很滑
尋找優秀軟件開發人員的標準建議是詢問您現有的開發人員。理論上,天哪,他們是聰明的開發人員,他們必須認識其他聰明的開發人員。
他們可能,但他們也有非常親愛的朋友,他們不是很好的開發人員,在這個領域大約有一百萬個地雷,所以事實是,我通常認為員工推薦的想法是最薄弱的新員工來源之一。
當然,一個很大的風險是競業禁止協議。如果你認為這些并不重要,想想Crossgain的案例,當Microsoft用個人訴訟威脅他們時,它不得不解雇四分之一的員工,都是前Microsoft。沒有一個頭腦正常的程序員應該簽署競業禁止協議,但他們中的大多數人都這樣做了,因為他們永遠無法想象它會被執行,或者因為他們沒有閱讀合同的習慣,或者因為他們已經接受了工作機會并舉家搬到了全國各地,工作的第一天是他們第一次看到這個協議,但現在有點太晚了試著談判一下。所以他們簽字,但這是雇主最狡猾的做法之一,而且它們通常是可執行和執行的。
關鍵是,競業禁止協議可能意味著,如果你過于依賴推薦,最終從同一個前雇主那里雇用了一群人,而你的員工首先從這個雇主那里認識其他明星程序員,你就要冒相當大的風險。
另一個問題是,如果你有任何形式的選擇性招聘流程,當你要求你的員工尋找推薦人時,他們甚至不會考慮告訴你他們真正的朋友。沒有人愿意說服他們的朋友申請他們公司的工作,結果卻被拒絕了。這有點阻礙了友誼。
由于他們不會告訴你他們的朋友,而且你可能無法雇用他們曾經一起工作的人,剩下的是沒有太多的潛在推薦人。
但是,員工推薦的真正問題是,當對經濟學有基本了解的招聘經理決定為這些推薦人提供現金獎金時會發生什么。這很常見。理由是這樣的:通過獵頭或外部招聘人員招聘優秀人才可能要花費 30,000 到 50,000 美元。如果我們能向員工支付,比如說,每招聘一名員工,他們就要獲得 5000 美元的獎金,或者每 10 次推薦人就能獲得一輛昂貴的跑車,或者其他什么,想想這會節省多少錢?5000 美元對受薪員工來說聽起來像是一筆財富,因為它確實如此。所以這聽起來像是一個雙贏的局面。
麻煩的是,突然間你可以看到小齒輪轉動,員工開始把他們能想到的每個人拖進來面試,他們有很強的動機讓這些人被錄用,所以他們指導他們進行面試,在會議室里與面試官進行安靜的對話,突然間,你的整個員工都在試圖讓你雇用某人無用的大學室友。
這是行不通的。ArsDigita 因購買法拉利并將其放在停車場并宣布任何獲得 10 次推薦的人都可以擁有它而獲得大量宣傳。沒有人接近,新員工的質量下降,公司分崩離析,但可能不是因為法拉利,事實證明,法拉利是租來的,只不過是一個宣傳噱頭。
當 Fog Creek 員工推薦可能非常適合我們工作的人時,我們愿意跳過最初的電話屏幕,但僅此而已。我們仍然希望他們接受所有相同的面試,我們保持同樣的高標準。