前谷歌工程師差點因為不知道貝葉斯公式被拒
(點擊
上方公眾號
,可快速關注)
編譯:伯樂在線 - 飛哥的咖啡
http://blog.jobbole.com/113652/
為什麼程序員找不到工作:4 個恐怖故事
【伯樂在線導讀】:當求職被拒時,我們多半會認為是自己的錯:「我被三家公司拒了,我可能是一個差勁的工程師。」招聘比你想像的還要複雜。工程師出身的技術獵頭 Iwan 在本文講了 4 個故事,那些優秀的工程師,因為一些無關技術水平或文化契合等原因,遭到拒絕。
以下是全文:
我做了很長一段時間的技術招聘後,我可以向你保證,招聘過程中的隨機因素和干擾因素(false negatives)也很重要。通常,拒絕是由於發生的偶然事件和一些不合理的原因(true negative)造成的。
恐怖故事 1:候選人因框架而拒
針對一家代理公司的前端需求,我推薦了一個前端工程師,他對 ECMAScript 和開源項目做出了很大的貢獻。我花了好幾個星期找到這個人,並花了好幾個小時來詳細評估他,包括視頻面試(我們喜歡在 coderfit.com 上這樣做)。但是,僅僅在
審查了 10 分鐘他提交的代碼
後,代理公司的一名工程師就拒絕了他。候選人甚至沒有得到一個合適的拒絕理由,僅有公司寄給他一個固定模板的回復:
「[…]儘管你的簡歷和求職信很有競爭力,我們的招聘團隊審查你的應用程序後,認為你不在我們的考慮範圍內。「[…]
這是一個非常糟糕的回復,因為他從沒提交過求職信!讀完回復後,我拋下手中的一切事情,開車來到他們的辦公室,去和代理公司的那個工程師談談,因為他拒絕的這位候選者,是我
在 2017 年面試過中的最佳前端工程師
。
期初,代理公司負責面試的工程師沒有告訴我真正拒絕的理由,他只是說儘管結構是正確的,所有 ES6 操作符和短函數都是正確的,但「
代碼設計過度
」。經過 10 分鐘的討論後,拒絕的理由清晰:因為候選人使用了一個面試官不知道的 MVC 框架。我覺得候選人能在編碼面試中使用這個框架非常了不起,所以我無法理解這(對面試的公司而言)會是一個問題。通過一些背景調查,我明白了更深層次的原因,也知道了為什麼候選人要使用這個 MVC 框架:招聘公司希望尋找的,是可重複循環利用的程序和方案(以節約相應的時間和金錢),而首席工程師(不是那個面試官)向我抱怨,候選人這樣的則更傾向於「為每個客戶重新造輪子」,這明顯不符合公司的訴求。然而,我推薦的候選人
在他的空閑時間,做了一個定製框架
,恰恰解決了代理公司正面臨的一些問題。但是那位面試官沒有看過我的文章或視頻採訪記錄,
他沒有考慮候選人使用這個框架的原因,只是單純地給出了「拒絕」這一結果。
而且,團隊領導人(同時也是候選人的支持者)正巧在休假,他也無法干預結果。提示:
在做評估之前,先了解別人對候選人的看法,這不好。但在某些情況下,如果有特殊狀況
,這樣做還是有意義的。這個故事讓人特別難過,因為 CEO 相信我並給我一些額外的報酬,讓我給他們帶來「最好的人」,所以我對這事格外用心。然而,我卻沒有得到公司員工和招聘負責人的支持,他們並沒有真正意義上評估我推薦的候選人。拒絕候選人的工程師甚至告訴我:「
招聘對我們來說,無足輕重。
」如果你作為招聘人員獲得了額外的報酬,這會讓你更有動力和使命感;但如果你缺乏被僱傭團隊的支持,那麼招聘的價值就幾乎不存在了。更糟糕的是,這位候選人在受到這樣的待遇後,產生了抵觸情緒,不想再和
其他瑞士僱主
有所接觸(吐槽點:來自 HR 的模板式回復,沒有反饋,代碼提交後等待兩周才被審核)。恐怖故事 2:前谷歌工程師差點因為不知道貝葉斯公式被拒
一家創業公司為了招聘一位 Python 工程師,面試了一個在谷歌工作四年的程序員。由於每個人都認為他會要求一份從谷歌到蘇黎世的補償金(超過 200k 瑞士法郎,工程師平均工資的兩倍),我在推薦他的時候碰到了點阻力。
然而,他提出的要求合情合理,只是想要(加入)一個和諧的團隊,來面對有趣的技術挑戰。因此,他接受了每一輪面試,並給大多數和他交談過的人留下了深刻印象。一家初創公司讓他經歷了四輪面試,而最後一輪他和面試團隊里的每個人都談了一次。
面試結束後,一個人站了起來,明確表示不應該僱傭候選人,因為他不知道/不能解釋貝葉斯公式(Bayesian formula)。
幾乎沒人關心這點,技術主管除外,他是唯一與團隊共擔風險的人,並直接向 CEO 彙報。幾個月以來團隊都沒有僱傭任何人。面對這種情況,他行使了自己的否決權,並明確表示,因為沒有熟記一些細節的瑣事而拒絕一名優秀的工程師,這是一個非常愚蠢的理由。他們最終僱傭了候選人。後來的
結果證明,被僱傭的工程師是公司有史以來做出最大貢獻的人。
事實證明,技術主管的決定是正確的:候選人安裝了開發環境後,在第一天就破紀錄地把三個 bug 解決了。之後,每個人都很激動,對這個決定感到高興。
谷歌等一些大公司使用技巧或演算法問題,是因為這些大公司能夠承擔招聘過程中的錯漏問題:它們可以拒絕很多優秀的候選人,是因為有無數人想為它們工作(谷歌每年有 300 萬個求職申請)。正如 Erin Ptacek 曾說過的:「瘋狂的定義就是以谷歌的風格做事,並期待成功降臨。」
恐怖故事 3:程序員被 HR 「遺忘」了
通常,我密切關注我的候選人,以及他們在招聘渠道的進展。當我在度假時,一個 CEO 接受了我推薦的一名程序員,但遠在另一個國家的 HR 部門卻沒有跟進。由於我在度假,我也沒有及時跟進,而候選人考慮了幾周後,得出了
他被拒絕的結論,因為沒有人跟進,告知他結果
(如果沒有人跟進,也並不意味著拒絕)。這是一個典型的工程錯誤。
兩個月後
,我再次接觸這位候選人,問他發生了什麼事。他和 HR 都不明白為什麼沒有後續進展了。所以我給所有相關人員都寫了郵件,詢問我們是否能結束整個招聘流程。一般而言,HR 薪資較低、內部結構混亂。內部招聘人員通常還要負責其他行政任務,而不只是招聘事務。更糟糕的是,有時小公司甚至沒有 HR 部門,而前台的人負責簡歷的審核、拒絕和轉發操作。這些人通常不太了解技術崗位的要求。他們從招聘經理那裡接受了 15 分鐘的簡報,知道了一些信息關於「正在尋找的人才」,然後做些適當的「過濾」。由於缺乏相關知識和對崗位的了解,結果往往不盡如人意。
恐怖故事 4:候選人因為比面試官牛叉被拒
有 Hacker News 網友評論說,有時候優秀的候選人不會被錄用,因為
他們太優秀了~
所以,我寫下了一直困擾我的第 4 個故事:我也曾碰到過這種情況,現在我仍然認為候選人的技術能力比面試官要好。那位候選人是個 22 歲的天才程序員,對開源程序做出過貢獻,但在代碼篩選階段被拒,我們就叫那個拒絕的面試官 Jon 好了。我對此感到十分震驚,所以我打了個電話來討論此事。HR、Jon 和我三人參與了這次電話會議。
Jon 在電話里給出的理由有點可笑,我甚至不確定 Jon 是不是認真的。值得一提的是,Jon 的 Github 貢獻,推送請求(pull request)等其他方面都很糟糕,但正是他負責招聘的簡歷篩選,所以我必須聽聽他的反饋。
Jon 指出了代碼中的一些問題,甚至讓我們在共享屏幕上看看。他提到的所有事情,其實都是更符合當下的傾向性選擇,而不是真正的問題。他批評的其他東西在外行看來確實有問題,但實際上都有著很好的理由去解釋(冗長的 try catch 塊,是由於代碼與交互的 API 不幹凈)。然後我就發火了,他的這些批評激發了我防禦機制,並提出
候選人代碼的質量比 Jon 發在 Github 上的還要好
,此時的我像變了個人似的。此時,HR 制止了我,並提醒道「我們現在並不是在評估 Jon」。但為時已晚,我只好快速轉移話題,並結束了電話。這可能成為另一篇博文的素材,如果這也解釋了人們為什麼暗地裡喜歡僱傭
比他們笨一點,或能力差一點的人
;個人面試官和公司作為一個整體,可能會害怕僱傭那些知道的更多,或比他們更有才的候選人。因為候選人太優秀而拒絕他們,這樣的理由並不能讓人接受,所以退一步方法是聚焦在候選人弱點或不同的地方,以此讓候選人退縮。結論
招聘比你想像的還要複雜。如果你被拒了,這不代表你是一個不合格的工程師,因為被拒的原因可能有很多。
如果你不清楚為什麼會有招聘中介公司的存在,那麼,我來告訴你,它們有時可以阻止本文提到的一些事情的發生。我們將人與賴以生存的工作進行匹配,除了遊戲制定者,我們在這場遊戲中擁有最大可能性,來消除彼此的障礙,讓人們得到工作。如果你有
瘋狂的被拒故事
,請在下方留言。
看完本文有收穫?請轉
發分享給更多人
關注「P
ython開發者」,提升Python技能
※Python驗證碼識別:利用pytesser識別簡單圖形驗證碼
※Python Mock 的入門
TAG:Python開發者 |