華為面試改革,你怎么看?
近日,華為面向全體員工發(fā)出了一個電子郵件,文件的內容是轉發(fā)華為輪值董事長徐直軍撰寫的《關于公司高端精英類、軟件類人才面試方法調整的建議》。
其中講到:軟件類人才面試要以考察軟件工程能力與編碼能力為核心,用真正懂軟件的編程高手來面試考察軟件類人才,識別出真正的軟件開發(fā)與設計高手。
詳情我就不貼了,關鍵點是:
應聘人員首先進行網上編程,時間 90 分鐘,網上編程符合要求的進入面試環(huán)節(jié)。
應聘人員可以選擇一種編程語言,進行兩輪面試,每輪約 45 分鐘。面試官均獨立進行面試考察,提前根據崗位要求設計編程考察題目,通過當面或視頻編程的方式,考察實際編程能力及相關知識技能掌握程度。候選人編程 30 分鐘,面試官提問與討論 15 分鐘。每位面試官給出獨立評價意見。
現場編程對程序員來說是一件非常要命的事情 !
你可能有過這樣的經歷: 面試官通過電子郵件給你發(fā)一個題目,限時完成,你可以先想好,再打開IDE去實現,或者一邊想一邊寫,遇到了問題,還可以Google一下, 寫錯了還可以再改,反正面試官只要最終結果,不管中間過程。
但是現場編程就不一樣了,你寫的每一行代碼,甚至每個字母都被別人盯著;你敲錯了代碼, 然后刪除也會被別人看到,中間過程被“監(jiān)視”, 編程思路,想法會被別人一覽無余。
和敏捷開發(fā)的結對編程不同, 這個“別人”不是你的Peer, 而是決定你“生死”的面試官,這壓力可不是一般的大啊! 我覺得一般人有10分的能力,能發(fā)揮出來8分就相當不錯了。
但是我覺得這個現場編程實施起來還是有一定難度的,主要原因在于時間太短,只有30分鐘,這點時間是寫不出太多東西的。
換位思考一下,你要是華為的面試官,應該怎么出這個現場編程的題目呢? 題目不能太大,要不然寫不完,太小又難以展示出候選人的能力。
也許可以從工作中提取一部分代碼,在面試的時候給候選人講解業(yè)務背景(正好考察理解能力), 然后讓面試者實現其中的若干關鍵函數,考察他的編程能力。
還有一種辦法就是重點考察設計能力,給一個小需求,讓面試者只去設計類,把類的方法寫出來,但是不做實現。
或者干脆從產品中找到一段爛代碼, 讓面試者重構。
現場編程面向實戰(zhàn), 能夠過濾掉那些把面經背得滾瓜爛熟,但是設計和編碼能力不行的人,沒有硬實力是通不過面試的。
現在大家都說:面試造航母,工作擰螺絲, 面試中的知識點在工作中根本不會用到,華為的這種考察方式能夠緩解這個問題。
不過,依中國人強大的考試能力,估計現場編程的題目很快就會出現在網上,成為新的面經。
不管怎么說,更加重視設計和編程能力, 這是一個好的起點。
【本文為51CTO專欄作者“劉欣”的原創(chuàng)稿件,轉載請通過作者微信公眾號coderising獲取授權】