前段時間有個做人力的朋友在招聘時遇到了問題。公司招聘需求很簡單,即招一個有一年以上電商經驗的功能測試,有效能和自動化優先。
她的問題大致可以分為3個:
如何篩選簡歷?即如何透過簡歷快速篩選掉一部分不合適的應聘者。
有沒有經典的兩三個問題初步判斷可以來面試?
面試時應該問什麼問題?怎麼問?如何篩選能力強的人?
筆者從開始做管理到現在,面試了超過200名測試工程師。這個過程中,我經常會反思:我是否很好的利用了自己的時間呢?招聘時我是否漏掉了更優秀的人才呢?我的招聘/面試方式應該從哪些方面進行最佳化?怎麼最佳化?
我希望透過建立更好的招聘流程,來提高我的招聘效率,招聘到更合適的、更優秀的一些人。
每個人錄用以後,我會持續跟蹤他們的工作表現,並根據得到的資訊來調整我的招聘方式。我從這個過程中學到很多東西,所以可以說說自己的看法,為招聘經理和技術官提供一些建議。
面試雖然很難,但是我認為,只要認真對待,許多問題都可以得到解決。
現狀
大多數的面試過程都包括這兩個主要步驟:簡歷篩選和麵試。
篩選簡歷是為了過濾掉不合適的人,我們公司的人力篩選簡歷的過程大致是:瀏覽應聘者的簡歷(約10秒鐘),然後電話溝通(30分鐘到1小時)。通常篩選5個人,才能有一個合適的。換句話說,絕大多數應聘者在這個環節都被過濾掉了。
為什麼在簡歷篩選過程中人力會看重學歷專業和證書呢?
有一個原因是篩選簡歷相對比較隨意,特別是一些受歡迎的公司,要處理的簡歷非常多(這時候需要快速作出決定)。學歷專業和證書這個時候就發揮作用了。還有一個做人力的朋友告訴我,她之所以看重學歷,是因為她覺得一個人如果學歷和專業不錯,那說明他在本應該認真學習的階段做了正確的事,是自制力強的表現。(也許很多人力都這麼想?)
約到公司後,人力和我會分別花費45分鐘到1小時的時間進行面試,我參考人力的意見決定是否錄用。
在面試的時候我採取的形式有:
筆試和麵試相結合
給出系統某個截圖,讓其在紙上寫出用例或bug。
有些技術問題允許應聘者使用自己的電腦或手機查詢,我只觀察他是否能最終給出我想要的答案。
允許應聘者展示他以前的工作成果。
筆試試卷中有必答題和選答題,選答題通常比較有意思和有挑戰性,藉此看看應聘者的性格。
考察一部分理論問題
在做出錄用決策時我是比較保守的,即傾向於拒絕應聘者。為什麼呢?
我覺得,錄用不合適的人,是經理能夠做出的最差的決策,可能要長時間忍耐這種錯誤的後果。
因為錯誤的否定(即拒絕能勝任工作的應聘者),後果無非是我浪費了一些時間。但錯誤的肯定(錄用了不合適的人),對公司的代價就很昂貴了,公司要為此付出薪酬、管理成本,甚至會影響團隊士氣(我們得承認,營造一種良好的工作氛圍往往需要花費一兩年的時間,但毀掉它只要一個月就夠了)。再加上在一小時內判斷應聘者的水平從根本上來說是很困難的,所以很自然的我在做出決策時是偏向於拒絕應聘者。
這麼說吧,如果讓我對已經錄用的人重新進行面試,那麼透過率是多少呢?這是一個可怕的問題。答案几乎可以肯定在100%以下。
需要澄清的是,我不是說公司在面試中應該降低要求——拒絕是面試的重點!我更加沒有說,公司害怕“錯誤的肯定”甚於“錯誤的否定”是錯誤的——錯誤的錄用一個應聘者所帶來的代價是昂貴的。
我知道自己的這個心理導致了“錯誤的否定”的機率很高,這傷害了那些應聘者(對公司來說也是一種損失)。我思考了一些改善的方法。
1.確定員工需要具備哪些技能
進行一個好的面試的第一步就是要確定應聘者需要具備哪些技能。這需要對測試小組承擔的任務,以及完成這些任務所需要的技能做出規劃。
比如:
你需要一個能夠適應快速迭代的人,還是細心嚴謹的?
你想要有人來解決技術問題,流程問題,人員素質問題,還是構建框架?
你是否需要一個擁有某個特定技術技能的員工,還是一個聰明的、能夠在工作中學習的員工?
質量管理理論、測試理論基礎等是重要的還是無關緊要的?
理解業務是否重要?
這些問題沒有正確的答案,最關鍵的是你應該根據自己的需要來做出有目的性的選擇。這也意味著要避免簡單地、隨意地挑選面試問題!
曾經有一次我為了招聘一個邏輯能力強的人,選擇了一道題:
小明正看著小學,而小雪正看著小文。小明已婚,小文未婚。請問是否有一位已婚人士正在看著一位未婚人士? 答案:( )
是 B、不是 C、無法確定
這道題當時有二十個應聘者做過,遺憾的是,只有2人給出了正確答案。能給出正確答案不一定意味著應聘者邏輯能力強(可能他受過類似的訓練),但若沒有給出準確答案,很難讓人相信應聘者邏輯能力強。
2. 問的問題儘可能地接近真實的工作
工作中分析一個專案的測試範圍可能需要一天甚至更長的時間,但面試官並沒有這麼長的時間來評估一個應聘者。每個面試官通常只有一個小時的時間。面試官看的是應聘者在壓力下快速解決小問題的能力。這是一項與眾不同的技能。它與應聘者本身所具備的技能是相關的(但又不完全相關)。在制定面試問題時,應儘可能地讓他們之間的差異最小化。
面試中問的問題應儘可能地接近應聘者應聘的那個職位(或者你想要衡量的技能)。例如,如果你關心的質量管理,可以讓應聘者分析一下公司所面臨的困境並嘗試給出解決思路,而不是提問他們專案測試經驗。如果你關心自動化測試框架,可以讓應聘者寫一小段程式碼來解決問題(比如我上一篇文章中提到的場景),而不是要求他們說出自動化測試開展的必要性。你可以讓應聘者在白紙上解決一個小問題,也可以讓他們用真實程式碼來除錯程式,但是,後者相對來說效果更好一些。
也就是說,在白紙上進行面試是有爭議的。作為一個面試官,在面試自動化測試工程師時,我不在乎工程師是否能夠熟記Python itertools模組。我關心的是他們如何使用迭代器來解決問題。透過讓應聘者在白紙上工作,我可以讓他們不必關注語法正確與否,而是專注於邏輯。甚至可以成為一個開放的書面面試,並允許他們用百度搜索任何他們想要的東西。
3. 避免不用思考的問題
對於面試中要問的問題,有另外一個很好的經驗法則,那就是要避免不用思考的問題,例如,
避免網上隨意蒐集的測試面試題,培訓機構都會刻意的用這類“面試題”訓練他們的學員,且應聘者面試前也多會蒐集類似資訊用以應對面試。防止他們不用動腦子就可以回答出來。
避免腦筋急轉彎或者任何需要頓悟的問題,能回答好這類問題不意味著應聘者更聰明,可能只是他們受過類似的訓練。
提倡提的問題需要有一系列相互依存的步驟,而不是一個單一的核心問題。這樣,你可以透過引導的方式幫助應聘者回答一個步驟,讓應聘者可以回答好剩下的步驟。這很重要,可以避免面試官表達不清、應聘者理解有誤,也可以緩解應聘者因為緊張而不知所措(面試中幫助他們並且看著他們恢復情緒也很重要)。舉個例子,讓應聘者在回答“作為一個leader,如何開展測試工作”(有一系列的步驟)可能比要求應聘者回答“開發不認同你提交的缺陷”(單單一個要點)來得更好。
4. 避免太難的問題
如果一個應聘者順利解答了一個非常困難的問題,那麼這相當於告訴了你很多有關他的能力方面的事情。但是,由於問題很難,大多數應聘者都不能很好的解答。那麼期望從這個問題獲得的資訊的多少,就會受到這個問題的難度大小的影響。我發現,最優的難度要比我最初預計的難度要小得多。
需要澄清的是,我不會因此而降低評判標準。我會對應聘者問一些簡單的問題,但是對評判的標準比較嚴格。對於大多數應聘者來說,這樣帶來的壓力更小,也算是額外的好處吧。
舉個例子,要求應聘者回答“UI測試需要關注哪些方面”要比要求其回答“如何做好電梯測試”來得要好。
5. 對每個應聘者問同樣的問題
面試就是對應聘者進行比較。目標是將應聘者分為能或者不能為公司做出貢獻的兩類人員(如果只是為單個職位僱用人員,則選擇最適合的人)。正因為這樣,向不同的應聘者提不同的問題是沒有道理的。如果你以不同的方式評估應聘同一工作的不同應聘者,會對做出錄用決策產生很大影響。為了篩選面試問題,面試官非常有必要花時間來學習這些問題,並探索提問方式和答案。
6. 考慮使用多套面試題
你應該考慮提供多份不同的面試題,這與我之前的觀點並不衝突。例如,你可能需要招聘幾個初級工程師,但同時又要招幾個有豐富測試經驗的工程師。在這種情況下,應當考慮準備多套面試題。並且,關鍵問題是,你應該準備足夠多的題目來標準化每套試題。
7. 不要因為證書而產生偏見
證書並不是毫無意義。從985/211畢業、或者在BAT工作過的工程師,從整體上來說比其他那些沒有這些經歷的工程師表現的要更好一些。
在篩選步驟中給予證書一定的重視程度並不是完全不合理。
但實際情況是,如果應聘者擁有更優秀的學歷和專業,這會干擾面試官的判斷,讓面試官更願意在面試中寬恕應聘者的錯誤。
8. 適當引導應聘者
面試不僅僅是評估一個應聘者的技能,也是一個團隊在接納一個成員。對於後半句話來說,面試可以認為是一個透過儀式。是的,面試的壓力很大,也讓人討厭(特別是表現不好的時候),但是我們都經歷了,應聘者也一樣。
作為一名面試官,當看到應聘者因為一道簡單的題目而卡住的時候,應避免說一些不合適的話(這隻會增加應聘者的壓力)。
我使用的一個竅門是,當應聘者表現得實在很差時,就把評估模式轉變為教學模式,評估模式的目標是評估應聘者的技能,而教學模式的目標是讓應聘者理解問題的答案(透過引導的方式)。
9. 錄用決策
測試團隊成員有不同背景:每個人都有自己的強項,且有很大不同。我曾經錄用過幾個沒幹過測試,但是有其他工作經驗的人,其中一個做過銷售(他負責編寫測試報告,協助我跟市場部、研發部溝通以引起某些工作的重視)。如果使測試小組具備所需的能力,這樣做會很成功。某些情況下不適合,比如自動化和效能工作,或者某些系統要求必須有足夠的行業經驗。
錄用有程式設計經驗的測試,特別是純黑盒測試團隊,可以幫助定位缺陷,提升測試部的對外形象。
錄用熱愛工作的人:謹慎對待喜歡抱怨、對過去不滿的人。
前段時間有個做人力的朋友在招聘時遇到了問題。公司招聘需求很簡單,即招一個有一年以上電商經驗的功能測試,有效能和自動化優先。
她的問題大致可以分為3個:
如何篩選簡歷?即如何透過簡歷快速篩選掉一部分不合適的應聘者。
有沒有經典的兩三個問題初步判斷可以來面試?
面試時應該問什麼問題?怎麼問?如何篩選能力強的人?
筆者從開始做管理到現在,面試了超過200名測試工程師。這個過程中,我經常會反思:我是否很好的利用了自己的時間呢?招聘時我是否漏掉了更優秀的人才呢?我的招聘/面試方式應該從哪些方面進行最佳化?怎麼最佳化?
我希望透過建立更好的招聘流程,來提高我的招聘效率,招聘到更合適的、更優秀的一些人。
每個人錄用以後,我會持續跟蹤他們的工作表現,並根據得到的資訊來調整我的招聘方式。我從這個過程中學到很多東西,所以可以說說自己的看法,為招聘經理和技術官提供一些建議。
面試雖然很難,但是我認為,只要認真對待,許多問題都可以得到解決。
現狀
大多數的面試過程都包括這兩個主要步驟:簡歷篩選和麵試。
篩選簡歷是為了過濾掉不合適的人,我們公司的人力篩選簡歷的過程大致是:瀏覽應聘者的簡歷(約10秒鐘),然後電話溝通(30分鐘到1小時)。通常篩選5個人,才能有一個合適的。換句話說,絕大多數應聘者在這個環節都被過濾掉了。
為什麼在簡歷篩選過程中人力會看重學歷專業和證書呢?
有一個原因是篩選簡歷相對比較隨意,特別是一些受歡迎的公司,要處理的簡歷非常多(這時候需要快速作出決定)。學歷專業和證書這個時候就發揮作用了。還有一個做人力的朋友告訴我,她之所以看重學歷,是因為她覺得一個人如果學歷和專業不錯,那說明他在本應該認真學習的階段做了正確的事,是自制力強的表現。(也許很多人力都這麼想?)
約到公司後,人力和我會分別花費45分鐘到1小時的時間進行面試,我參考人力的意見決定是否錄用。
在面試的時候我採取的形式有:
筆試和麵試相結合
給出系統某個截圖,讓其在紙上寫出用例或bug。
有些技術問題允許應聘者使用自己的電腦或手機查詢,我只觀察他是否能最終給出我想要的答案。
允許應聘者展示他以前的工作成果。
筆試試卷中有必答題和選答題,選答題通常比較有意思和有挑戰性,藉此看看應聘者的性格。
考察一部分理論問題
在做出錄用決策時我是比較保守的,即傾向於拒絕應聘者。為什麼呢?
我覺得,錄用不合適的人,是經理能夠做出的最差的決策,可能要長時間忍耐這種錯誤的後果。
因為錯誤的否定(即拒絕能勝任工作的應聘者),後果無非是我浪費了一些時間。但錯誤的肯定(錄用了不合適的人),對公司的代價就很昂貴了,公司要為此付出薪酬、管理成本,甚至會影響團隊士氣(我們得承認,營造一種良好的工作氛圍往往需要花費一兩年的時間,但毀掉它只要一個月就夠了)。再加上在一小時內判斷應聘者的水平從根本上來說是很困難的,所以很自然的我在做出決策時是偏向於拒絕應聘者。
這麼說吧,如果讓我對已經錄用的人重新進行面試,那麼透過率是多少呢?這是一個可怕的問題。答案几乎可以肯定在100%以下。
需要澄清的是,我不是說公司在面試中應該降低要求——拒絕是面試的重點!我更加沒有說,公司害怕“錯誤的肯定”甚於“錯誤的否定”是錯誤的——錯誤的錄用一個應聘者所帶來的代價是昂貴的。
我知道自己的這個心理導致了“錯誤的否定”的機率很高,這傷害了那些應聘者(對公司來說也是一種損失)。我思考了一些改善的方法。
1.確定員工需要具備哪些技能
進行一個好的面試的第一步就是要確定應聘者需要具備哪些技能。這需要對測試小組承擔的任務,以及完成這些任務所需要的技能做出規劃。
比如:
你需要一個能夠適應快速迭代的人,還是細心嚴謹的?
你想要有人來解決技術問題,流程問題,人員素質問題,還是構建框架?
你是否需要一個擁有某個特定技術技能的員工,還是一個聰明的、能夠在工作中學習的員工?
質量管理理論、測試理論基礎等是重要的還是無關緊要的?
理解業務是否重要?
這些問題沒有正確的答案,最關鍵的是你應該根據自己的需要來做出有目的性的選擇。這也意味著要避免簡單地、隨意地挑選面試問題!
曾經有一次我為了招聘一個邏輯能力強的人,選擇了一道題:
小明正看著小學,而小雪正看著小文。小明已婚,小文未婚。請問是否有一位已婚人士正在看著一位未婚人士? 答案:( )
是 B、不是 C、無法確定
這道題當時有二十個應聘者做過,遺憾的是,只有2人給出了正確答案。能給出正確答案不一定意味著應聘者邏輯能力強(可能他受過類似的訓練),但若沒有給出準確答案,很難讓人相信應聘者邏輯能力強。
2. 問的問題儘可能地接近真實的工作
工作中分析一個專案的測試範圍可能需要一天甚至更長的時間,但面試官並沒有這麼長的時間來評估一個應聘者。每個面試官通常只有一個小時的時間。面試官看的是應聘者在壓力下快速解決小問題的能力。這是一項與眾不同的技能。它與應聘者本身所具備的技能是相關的(但又不完全相關)。在制定面試問題時,應儘可能地讓他們之間的差異最小化。
面試中問的問題應儘可能地接近應聘者應聘的那個職位(或者你想要衡量的技能)。例如,如果你關心的質量管理,可以讓應聘者分析一下公司所面臨的困境並嘗試給出解決思路,而不是提問他們專案測試經驗。如果你關心自動化測試框架,可以讓應聘者寫一小段程式碼來解決問題(比如我上一篇文章中提到的場景),而不是要求他們說出自動化測試開展的必要性。你可以讓應聘者在白紙上解決一個小問題,也可以讓他們用真實程式碼來除錯程式,但是,後者相對來說效果更好一些。
也就是說,在白紙上進行面試是有爭議的。作為一個面試官,在面試自動化測試工程師時,我不在乎工程師是否能夠熟記Python itertools模組。我關心的是他們如何使用迭代器來解決問題。透過讓應聘者在白紙上工作,我可以讓他們不必關注語法正確與否,而是專注於邏輯。甚至可以成為一個開放的書面面試,並允許他們用百度搜索任何他們想要的東西。
3. 避免不用思考的問題
對於面試中要問的問題,有另外一個很好的經驗法則,那就是要避免不用思考的問題,例如,
避免網上隨意蒐集的測試面試題,培訓機構都會刻意的用這類“面試題”訓練他們的學員,且應聘者面試前也多會蒐集類似資訊用以應對面試。防止他們不用動腦子就可以回答出來。
避免腦筋急轉彎或者任何需要頓悟的問題,能回答好這類問題不意味著應聘者更聰明,可能只是他們受過類似的訓練。
提倡提的問題需要有一系列相互依存的步驟,而不是一個單一的核心問題。這樣,你可以透過引導的方式幫助應聘者回答一個步驟,讓應聘者可以回答好剩下的步驟。這很重要,可以避免面試官表達不清、應聘者理解有誤,也可以緩解應聘者因為緊張而不知所措(面試中幫助他們並且看著他們恢復情緒也很重要)。舉個例子,讓應聘者在回答“作為一個leader,如何開展測試工作”(有一系列的步驟)可能比要求應聘者回答“開發不認同你提交的缺陷”(單單一個要點)來得更好。
4. 避免太難的問題
如果一個應聘者順利解答了一個非常困難的問題,那麼這相當於告訴了你很多有關他的能力方面的事情。但是,由於問題很難,大多數應聘者都不能很好的解答。那麼期望從這個問題獲得的資訊的多少,就會受到這個問題的難度大小的影響。我發現,最優的難度要比我最初預計的難度要小得多。
需要澄清的是,我不會因此而降低評判標準。我會對應聘者問一些簡單的問題,但是對評判的標準比較嚴格。對於大多數應聘者來說,這樣帶來的壓力更小,也算是額外的好處吧。
舉個例子,要求應聘者回答“UI測試需要關注哪些方面”要比要求其回答“如何做好電梯測試”來得要好。
5. 對每個應聘者問同樣的問題
面試就是對應聘者進行比較。目標是將應聘者分為能或者不能為公司做出貢獻的兩類人員(如果只是為單個職位僱用人員,則選擇最適合的人)。正因為這樣,向不同的應聘者提不同的問題是沒有道理的。如果你以不同的方式評估應聘同一工作的不同應聘者,會對做出錄用決策產生很大影響。為了篩選面試問題,面試官非常有必要花時間來學習這些問題,並探索提問方式和答案。
6. 考慮使用多套面試題
你應該考慮提供多份不同的面試題,這與我之前的觀點並不衝突。例如,你可能需要招聘幾個初級工程師,但同時又要招幾個有豐富測試經驗的工程師。在這種情況下,應當考慮準備多套面試題。並且,關鍵問題是,你應該準備足夠多的題目來標準化每套試題。
7. 不要因為證書而產生偏見
證書並不是毫無意義。從985/211畢業、或者在BAT工作過的工程師,從整體上來說比其他那些沒有這些經歷的工程師表現的要更好一些。
在篩選步驟中給予證書一定的重視程度並不是完全不合理。
但實際情況是,如果應聘者擁有更優秀的學歷和專業,這會干擾面試官的判斷,讓面試官更願意在面試中寬恕應聘者的錯誤。
8. 適當引導應聘者
面試不僅僅是評估一個應聘者的技能,也是一個團隊在接納一個成員。對於後半句話來說,面試可以認為是一個透過儀式。是的,面試的壓力很大,也讓人討厭(特別是表現不好的時候),但是我們都經歷了,應聘者也一樣。
作為一名面試官,當看到應聘者因為一道簡單的題目而卡住的時候,應避免說一些不合適的話(這隻會增加應聘者的壓力)。
我使用的一個竅門是,當應聘者表現得實在很差時,就把評估模式轉變為教學模式,評估模式的目標是評估應聘者的技能,而教學模式的目標是讓應聘者理解問題的答案(透過引導的方式)。
9. 錄用決策
測試團隊成員有不同背景:每個人都有自己的強項,且有很大不同。我曾經錄用過幾個沒幹過測試,但是有其他工作經驗的人,其中一個做過銷售(他負責編寫測試報告,協助我跟市場部、研發部溝通以引起某些工作的重視)。如果使測試小組具備所需的能力,這樣做會很成功。某些情況下不適合,比如自動化和效能工作,或者某些系統要求必須有足夠的行業經驗。
錄用有程式設計經驗的測試,特別是純黑盒測試團隊,可以幫助定位缺陷,提升測試部的對外形象。
錄用熱愛工作的人:謹慎對待喜歡抱怨、對過去不滿的人。