決定開發者面試成敗的 3 個問題

Jerry發表於2015-01-09

當你運營著一個成長中的諮詢公司,會做很多招聘工作。我們主要招聘Hadoop。我們尋找的是一些具有基本條件的人,並訓練他們,而不是愚蠢地嘗試從幾百個人中挖走具有Hadoop經驗的人。

這意味著我們傾向於僱傭具有良好的Java和SQL經驗的開發者。對我而言,一個優秀的開發者應具有批判性思考技巧和學習新東西的能力。

我通常以壘球問題開始面試去誘導我的獵物進入虛假的安全感(開玩笑的)。我真正的意思是,我想讓面試者儘可能舒適,這樣我就可以評估他們整體的溝通能力,而不是讓他們在面試中緊張。

然後我會問許多基礎的技術問題,以確保簡歷中沒有他們不知道含義的術語。但還是有人會把 Java 放到簡歷中,僅僅意味著他們只是執行過Java程式碼而不是知道如何編寫(雖然自從招了一個HR後我還沒有遇到過這種人)。那些用過很多工具的人,缺少深入地使用,也缺少深入的監督。比如,他們可能使用過RDBMS,但是並不知道鎖是如何工作的,或者他們的查詢功能執行起來很慢。我通常都能很快地解決這些問題。

我通常不會費心思去問一些基本的語法問題,或者其他一些可以很快就 Google 到但沒有理解的概念。相反,我會問一些真正關鍵的應該知道的,如果你一直工作在你所說的那項技術中。

我問的三個最重要的問題,需要一個人能夠進行獨立的思考,即使回答者是在撒謊。

1. 請描述一下,讓你感到最自豪的專案。你在那個專案,哪部分是你做得特別好的?

這個問題告訴我了許多關於他們知道什麼,他們價值多少,他們在團隊中的實際位置,以及他們是否真正在思考他們在做什麼。

2. 請描述一下,讓你感到最不爽的專案。你會做出哪些改變?

我需要可以學習的人,而學習意味著犯錯誤,意識到錯誤,並且下次做的更好。

3. 如果有一個Web應用,它還在執行(通過 top/ps/無論什麼),但是當使用者嘗試訪問它的時候卻得到“拒絕連線”的迴應。那麼你將如何診斷這個問題?

通過這個問題的答案,我可以瞭解面試者的思維過程,最喜歡的分析工具,和偏見,也瞭解他們是否真的知道如何去解決問題。獲得正確的答案並不重要,但是它能讓我知道這個人是如何思考的,以及他們對使用的工具的熟悉程度。

你想從一個開發者身上尋找什麼?除了基本的技術話題,你認為什麼樣的問題,可以讓你知道你想知道的?

相關文章