線上付款服務 Stripe 技術長如何招募新員工?

評論
評論

本文來自於問答網站 Quora,由線上付款服務新創公司 Stripe 的 CTO Greg Brockman 親自作答。Stripe 是一家提供線上付款服務的公司,目前已募得 4000 萬美金左右,估值約五億美金,投資人甚至包括 PayPal 創辦人中的三位(Peter Thiel、Elon Musk 和 Max Levchin)。

我們對面試過程經過了數次重新設計,最近的一次是在今年 5 月,由 Siddarth Chandrasekaran、Evan Broder 和我共同設計完成。我們會嘗試在面試中模擬你每天所做的工作,我們不會問你任何純演算法的問題,你如果需要求助 Google 或是面試官,都沒問題。

首先我們會通過 Skype 對你進行程式面試,我們會要求你現場寫程式,你可以用自己擅長的編輯器和語言。我們所問的問題主要是為了測試你「將想法轉變為程式碼」的能力,換句話說,想到解決問題的思路並不難,難的是要寫出乾淨的、可維護的程式碼來實現相關的功能。單單寫出正確的程式碼是不夠的——我們要的是優秀的程式碼,而很多人做不到這一點,這也是他們面試失敗的主要原因。

線上面試由以下幾個部分組成:

設計和實作(90-120 分鐘)。 我們會要求你設計一些系統(如一個 API、網頁界面,或是一個分布式系統),然後遞交一個你設計的系統的原型。我們這樣做是為了觀察你如何點對點解決問題:在讀懂題目(無論使用者需求還是技術需求)的前提下,找到一個解決方案,並成功實作。你需要好像它要投入生產一樣對待它:對程式碼的品質而非數量做最佳化,視情況編寫測試等等。如果你做到了以上要求,沒完成也沒關係。

排除漏洞(45-60 分鐘)。 我們會給你一個熱門的開源專案,裡面有些尚未被排除的漏洞。你的任務就是盡可能地修補這些漏洞,我們這裡主要是想看看你如何駕馭一個你不熟悉的程式碼庫,並對他人的程式碼進行漏洞修補。

重構(45-60 分鐘)。我們會給你一個急需改善的應用程式,要求你改善它的結構。這裡我們主要是想了解你對優秀程式碼的想法。

Pair Programming(30-45 分鐘)。 我們給你一份小型的獨立的專案,我們需要你寫出乾淨、可維護的程式碼來實作它。這裡我們想了解你在清楚知悉限制的情況下程式功力。

在對你做技術評估的同時,我們還想了解與你一起工作是什麼情況。所以我們希望面試過程能通過流暢的網路進行,確保溝通愉快。

在面試的結尾,我們還會對其他同事進行一些關於面試者的小測試:

週日測試。 如果在一個週日,這個人獨自在辦公室工作,你會去陪陪他/她嗎?這當然只是假設——為了看看這個人是否足以讓其他同事樂意與他/她為伴。

興奮測試。 雇用這個人,會讓你對在 Stripe 工作感到更加振奮嗎?我們雇用的每一個人都應該在某種層面上讓公司更好。只維持公司之前的水準還不足以令人振奮——這個人需要能為公司帶來日常工作之外的價值。

速度測試。 這個人在加入 Stripe 的前 6 個月內能做到自立嗎?我們會雇用多種工程師,其中有些工作多年,有些則初出茅廬,無論哪種,我們都想給予同等的輔導,我們也想確保每一個員工都有能力完成自己的工作。如果在頭六個月裡,我們覺得你沒法做到這一點,那我們就會認為你無法達到我們要求的速度。

我們會要求每一個 Stripe 員工都參與雇用決策,雇用會議對公司所有人開放(雖然通常只有面試官會參加),每個人都由否決權。這樣的話,所有人不僅參與了雇用新人的過程,也能對雇人結果負責。衡量一個過程進行得是否成功,頗為重要。長期來看,我們關心的重點是我們是否建立了一支偉大的團隊。我們無法對此作出絕對的評估,但我們所進行的測試是為了了解人們是否因為喜愛團隊的夥伴而加入。讓面試者與公司的一群可愛員工一起吃午飯,是我們目前最有效的「勾引」手段,如果這一招屢試不爽,那就證明了我們正在建立一支正確的團隊。

評論