本文由 簡悅SimpRead 轉(zhuǎn)碼,原文地址 www.jessesquires.com
科技界的每個(gè)人似乎都有一個(gè) "可怕的技術(shù)面試 "的故事。這個(gè)話題在eth......,悄悄地繞了一圈。
科技界的每個(gè)人似乎都有一個(gè) "可怕的技術(shù)面試 "的故事。這個(gè)話題悄悄地在我們行業(yè)的乙醚中運(yùn)行,并定期以推特或博客文章的形式在大氣中迸發(fā),變成病毒。盡管人們普遍厭惡我們這個(gè)行業(yè)的浮躁和無視的面試過程,但似乎很少有人愿意改善目前的標(biāo)準(zhǔn)。最近我的時(shí)間軸上的一條推文讓我想起了一個(gè)我從未講過的故事。
那是2015年左右的某個(gè)時(shí)候。我在各個(gè)地方面試,我得到了蘋果手表團(tuán)隊(duì)的面試機(jī)會(huì)。經(jīng)過一整個(gè)上午,我在(也許?)第4次面試。面試官讓我在白板上用C語言寫合并排序。當(dāng)然,我對這個(gè)算法很熟悉,可以從概念上解釋它是如何工作的。但是,如你所料,在白板上用一種我不是每天都在使用的編程語言準(zhǔn)確地重現(xiàn)它,讓人感到恐懼。更不用說,我一般都很緊張和焦慮,因?yàn)槊嬖嚒V粚懥藥仔?,面試官就從我身后叫住了我,一邊舒服地坐在椅子上,一邊開玩笑說:"你一定是寫了很多Swift",因?yàn)槲也恍⌒穆┑袅藥讉€(gè)分號(hào)。
這句話讓我在接下來的時(shí)間里很不爽,不僅是因?yàn)槲艺幱谝粋€(gè)可笑的白板練習(xí)中,而這個(gè)練習(xí)什么也證明不了,還因?yàn)樗屛液苌鷼?,我不得不冷靜地對待。當(dāng)時(shí),Swift只有幾年的歷史,而且我在現(xiàn)在的工作中也沒有寫它。那是在Swift粗糙的早期。我的團(tuán)隊(duì)都在避免使用它。我只是在家里嘗試用Swift來玩。我每天都在寫Objective-C,它確實(shí)有分號(hào)。但如果你的白板代碼不能編譯,你一定是個(gè)白癡。
正如你可能已經(jīng)得出的結(jié)論,在那個(gè)房間里剩下的一小時(shí)左右的時(shí)間里,結(jié)果并不理想。
然而,這個(gè)故事有一個(gè)特別的諷刺意味。這次采訪發(fā)生在我的Apples To Apples博文系列(第一部分, 第二部分, 第三部分)之后一兩年,我在其中實(shí)現(xiàn)了合并排序以及Swift、Objective-C和C中的其他各種排序算法,然后比較了結(jié)果。(Swift曾經(jīng)是真的很慢。)但我并沒有從內(nèi)存中寫出這些排序算法。我參考了互聯(lián)網(wǎng)上無限多的資源來寫它們,并確保它們是正確的。我當(dāng)然沒有內(nèi)化其中任何一個(gè)。這不是重點(diǎn),也不是對時(shí)間的良好利用--即使現(xiàn)在也是如此。那些帖子是一個(gè)快速練習(xí)的樂趣和實(shí)驗(yàn),而且實(shí)際上沒有人在生產(chǎn)中寫過合并的那種。
快進(jìn)了幾年,我最終在Facebook接受了一份工作(大錯(cuò)特錯(cuò),但這是另一篇文章)。令人驚訝的是,早期Swift團(tuán)隊(duì)的一些成員最終離開了蘋果,加入了Facebook,從事HHVM或類似的工作,不確定。總之,其中一個(gè)人是Nadav Rotem,他曾在編譯器優(yōu)化團(tuán)隊(duì)工作。在他給我發(fā)信息說他從Apples To Apples博客文章中認(rèn)出了我的名字后,我們見面喝了杯咖啡,這些文章被火燒和被iOS Dev Weekly鏈接。我還記得收到了Chris Lattner的信息,感謝我當(dāng)時(shí)寫了這些帖子。我了解到,這些帖子已經(jīng)在內(nèi)部流傳--事實(shí)上,一直到克雷格-費(fèi)德里吉。在那些早期的日子里,蘋果急于展示Swift的成功。納達(dá)夫的團(tuán)隊(duì)最終使用了我寫的代碼來改進(jìn)編譯器的優(yōu)化。
鑒于此,我想我沒能通過一個(gè)涉及學(xué)術(shù)性排序算法的面試是非常可笑的,因?yàn)闆]有人會(huì)在他們的日常工作中使用這些算法。但我怎么會(huì)知道watchOS的基礎(chǔ)是建立在合并排序之上的?那是我職業(yè)生涯的早期,我很緊張,在那一刻我有點(diǎn)慌了,而且我不得不面對一個(gè)混蛋的玩笑。另外,在白板上寫代碼是他媽的愚蠢的--所以就有了這個(gè)。
盡管我沒有得到錄用通知,但我的招聘人員急于為我爭取其他團(tuán)隊(duì)的面試。我聽說在蘋果公司內(nèi)部所有的團(tuán)隊(duì)都是非常不同的。然而,我拒絕了,而是繼續(xù)接受其他公司的面試。關(guān)于這段經(jīng)歷的另一個(gè)奇怪之處在于,多年來,我觀看了我的面試圈中的一些人在WWDC上的演講。
自從那次經(jīng)歷后,我在不同公司的面試過程中站了幾十次、幾十次的兩邊。我了解到,一個(gè)優(yōu)秀的面試官知道如何提出好的問題,讓她對候選人的技能有很多了解,同時(shí)確保候選人始終感到舒適和自信。這就是我面試人的方式。
詭計(jì)多端的問題和深?yuàn)W的謎題不會(huì)給面試官帶來關(guān)于面試者的有用信息--她的技能、她的優(yōu)勢、她的弱點(diǎn)、她的發(fā)展?jié)摿?。這些都是一個(gè)偉大的面試官應(yīng)該尋找的東西。這意味著你要在候選人陷入困境時(shí)給予提示,不要用無意義的評論來打斷他們。無論你給候選人解決什么問題,作為一個(gè)面試官,你的目標(biāo)應(yīng)該是讓他們盡可能多地解決這個(gè)問題,以獲得盡可能多的信號(hào)。額外的好處是,你走得越遠(yuǎn),候選人的感覺就越好,越自信,這也有助于他們?yōu)橄乱粋€(gè)環(huán)節(jié)做好準(zhǔn)備。經(jīng)驗(yàn)不足的面試者往往需要更多的幫助,這也是可以的。
我們的目標(biāo)永遠(yuǎn)不應(yīng)該是欺騙面試者--那是在浪費(fèi)大家的時(shí)間。而我在那個(gè)團(tuán)隊(duì)的面試經(jīng)歷就是如此--完全浪費(fèi)了我和他們的時(shí)間。