面試的一些思考

寫在前面

在一個小時內對一我的作出 yes or no 的判斷,是一件複雜的工程 —— 信息的輸入、消化、整合、再輸出都要在面對面的形態下,實時密集的進行;同時,信息的不對稱也增長了咱們的溝通成本,不時伴隨着困惑與糾結。技術面試確實容易在不少方面出現問題,本文基於本身在面試經驗所成,不妨一看。面試

一些容易被忽視的原則

首先,面試是一個雙向選擇的過程。從面試角度來說,考察候選人的時候看的是這我的,而反過來候選人看面試官看到的是一個公司的形象表明,因此做爲面試官,主要目標應該有兩個:一是儘量深刻地瞭解候選人,二是須要向候選人展現我司形象。(面試官行爲規範)算法

其次,切忌和候選人比拼知識技能。一方面知識技能和每一個人的經歷關係很大,咱們很難找到徹底匹配當前工做的候選人,考察注重的應該是候選人的學習能力,另一方面展現面試官的自身技能並不是面試的目的。編程

最後,咱們要找的是合做者、將來的同事。一方面在面試過程當中,候選人陷入困局的時候不妨點撥他一下,想一想本身團隊若是有個同窗搞不定問題時你會怎麼作?另一方面在最終決定要不要經過時若是猶豫不決,必定須要問本身一個問題,那就是若是這我的成爲你的同事,你是否是很願意和他在一個團隊並肩做戰?設計模式

面試前的準備以及開場

首先,面試前最好可以閱讀一下候選人的簡歷,瞭解一些基本信息,發現一些有待澄清的疑問點,以及可能的興趣點。微服務

其次,面試開場白主要是讓候選人進入面試的狀態,因此簡單寒暄幾句就好,不建議讓他完整地介紹人生旅程,或者重複簡歷上已有的內容,不然就是在浪費時間。學習

最後,面試的同時能夠及時的備註面試者的回答信息,方便後續面試官的信息同步和決策判斷。(面試官評價模版)網站

工程的面試問題

1、詢問過去工做中碰到過的一個項目或者解決過的問題
儘量按照 STAR (Situation, Task, Action, Result) 的技巧來組織對話,瞭解問題背後的信息,候選人本人的貢獻,以及反映出來的能力。設計

一般來講這個問題我習慣放在最前面,由於對於這類問題候選人比較熟悉,回答的時候不會過於緊張。另外能夠經過這個問題引出後續的一些具體的技術問題。面試技巧

這個問題能夠有不少變形,好比你作過的失敗的項目是什麼,最成功的項目,最難的項目,印象深入的項目等等,提問的時候要考慮候選人對於回答的內容記憶是不是比較清楚的,這樣有助於挖出不少細節的信息。同步

對於候選人的回答,須要判斷其語言的信息量,若是形容詞比較多,好比作得很好,客戶反應不錯之類的回答,應該要求其給出明確的描述,到底好在什麼地方,有沒有明確的內容和數據,而不是含糊的形容一下。一般若是一個工程師在獲得明確提示的狀況下仍是不能切換陳述事實的方式,那麼我基本上能夠認爲這我的對於日常的工做是缺少理性思考的。

2、根據簡歷 / 背景詢問關於某個具體的知識點的細節
算法編程題
算法或者代碼編程題階段,要注意候選人的思考過程,可讓他本身說說本身解題的思路,計算的複雜度,潛在的問題和侷限性,以及解決的方案等等。(Coding 標準)

設計問題
好比設計一個開放平臺系統,一個在線購物網站等等。能夠要求畫出模塊圖,給出關鍵的 API 的定義或者類和類之間的關係。

注意這類問題須要提早準備,注意不要選擇腦筋急轉彎的問題,而應該是你們能理解的實際可能碰到的問題,另外就是不要一上來把問題所有解釋清楚,由於你須要看看候選人可否主動來了解產品需求(產品每每不會把全部需求說清楚)。另一個須要注意的是這類問題能夠很容易改變或者新增需求,因此能夠考察候選人的方案如何適應變化的需求。

發散的面試問題

關於 * 你怎麼看
這一類問題通常是沒有明確的答案的,主要考察候選人是否有本身的理解,好比能夠問候選人對於一些常見的編程和軟件工程理念的見解,DDD、OOP、SOA、設計模式、微服務等等,來看看候選人日常對於這些問題是否有思考和總結,也能夠是對於最近的一些技術熱點的關注,等等。

不要指望這類問題的回答是否是和本身的觀點一致,若是不一致的時候也不要想着和候選人爭論,而是應該引導候選人完成地表述本身的邏輯,瞭解其觀點背後的內容,考察候選人對於概念的理解和實踐的程度,看看候選人是否有比較嚴密的可以自圓其說的邏輯。

你的朋友或者同事是怎麼評價你的
注意這個問題實際上是候選人本身理解到的外在對他的評價,可是仍是能得到頗有意思的信息,注意有時候須要深挖。深挖的時候要讓候選人描述一個能符合其觀點的事實,這樣才能正確評估候選人實際的狀態。

這個問題能夠考察候選人是否是一個自省的人,可否認識到本身的長處和短處。

最近在看什麼書
我比較喜歡提的一個問題,看起來簡單,可是可以觀察候選人的學習方式和行爲習慣,除了讓候選人報出書名,必定須要讓他講講這本書裏面讓他印象深入的章節,以及他從中學到了什麼?

工做之餘作什麼事情
提出這個問題是觀察候選人是否是真的對技術有興趣和熱情,一個工程師的業餘生活也頗有可能和技術有很大的關係,好比看些開源的軟件、寫些平常的博客等等。

應該避免的狀態

候選人反覆在同一個問題上糾纏過久
若是候選人思惟陷入某個問題沒法自拔,而面試官沒法從溝通中獲取有效信息,由於總的面試時間是有限的,因此有時候須要禮貌地打斷候選人,好比說」 好的,我已經知道了,……「轉移話題。

一上來就問很是困難的問題
不少候選人在碰到很是困難的問題又長時間不能解決的時候會很是緊張,影響後續發揮,既然個人目的是爲了尋找日常工做中的合做夥伴,一般來講沒有必要把候選人弄得特別緊張。

提早太早結束
即便開始幾個問題候選人回答不是特別順利,最好也能從不一樣的側面考察候選人,由於可能候選人還存在其餘比較優秀的方面,並且從禮貌的角度來講我也儘可能尊重候選人。

陷入爭執
這一點必定要避免,一旦出現爭執,後面的面試基本上就很難繼續了,即便勉強繼續下去,也沒法真實地考察候選人。在可能爭執的點上先放下,不要試圖說服候選人,轉移到其餘問題上。

其餘的面試技巧

如何識別技術人才
在個人廣泛印象中,好的技術人才每每在面試開始的時候不會很是熱情,可是當聊到某個具體問題的時候,可能會忽然濤濤不絕地談論從上到下的細節,同時又能在適當的時候收回來,不至於讓人以爲很是不適。優秀的人每每可以從原理到實現都理解得很是透徹,既能回答具體的細節問題,又能提出本身的觀點和思考總結,而且對於新的問題可以迅速給出本身的比較靠譜的思考和解釋。

面試中的溝通技巧
須要注意的是,在面試的過程當中不只僅要考察問題的回答,同時也要注意不少溝通技巧,好比觀察對方是否是可以準確地理解問題,面對問題陳述有沒有作適當的複述,有沒有在沒有問清楚需求的狀況下就開始自顧自解答了。

候選人在回答的時候,若是偏題太遠,須要經過適當的方式中斷候選人的陳述。若是候選人陷入問題出不來的時候,須要給予適當的提示幫助他解答出問題以便順利結束面試(不等於要最後放他經過)。

相關文章
相關標籤/搜索