作者lairrol (Kindness)
看板Soft_Job
標題Re: [請益] 如何面試中認出優質的工程師?
時間Sat Jul 7 12:29:04 2018
看到這個我也來分享一下我的簡單測試
小弟找新人會用四則運算來做白板題
寫一個四則運算的白板題
不會太複雜就是給一個函數然後兩個輸入
最後會輸出這兩個輸入的四則運算結果
簡易程式碼考題:
cal(inputValue1, inputValue2)
{
輸出加減乘除的結果
}
面試樣本數大概 1x 位, 大概的人數我忘了
以下是幾種面試人的反應
1. 完全寫不出來
# 真的有人看到白板手寫寫不出程式碼...
2. 很快寫完,問一下除法的作法是否正確
3. 寫之前會向我確定 spec. 然後再很快的寫完
4. 很快寫完也有處理到除法的陷阱
第1種類型的我就會很快速的面試完然後謝謝再聯絡
第2、3、4種的我就會多問一點錯誤處理,像是如果我輸入的數值非整數
或是有 0 的話要怎麼處理
完全看當下面試者的反應,分以下幾種
比較好的是可以有條理地說出理由跟做法
次等一點的是需要一些引導可以講出"合理"的做法跟理由
最後就是作法搖擺不定,假裝嚴厲地問一下就會開始自我懷疑...
這樣找到的新人大部分都還可以訓練
至少溝通上面沒有太大問題~
※ 引述《tomtang0406 (~~~)》之銘言:
: 需要什麼樣的流程,愚以為要看公司規模,系統特性,人員組成來決定,大象不會跳舞。
: 打快攻有快攻的流程(搶市佔),禁區防守有防守的流程(鞏固現有勢力),看產業模式
: 而定,沒有一定標準做法。
: 原PO看起來想用「方便、快速做事」的流程,但想問怎麼找到適合這樣流程的夢幻人選。
: 無論後面爭論的內部管理與流程,但一開始如何面試合適的人,都是個值得思考。
: 最近剛好我也在煩惱這個招募問題,我想會用上機考的方式,給一個lab, 裡面只有一個
: 簡單的function,但是有bug,我會請面試者找出裡面的bug並修復。
: 實際上bug不只有一個,最粗淺的就是編譯失敗的語法問題,括號不對稱或是變數存取範
: 圍不一致這類,這個解不了,我就送他到門口鞠躬說聲謝謝請等待通知。
: 編譯失敗的問題解決了,如果面試人立即回報說這題完成了,那我就會知道他不是一個細
: 心的人,只看見眼前的問題,而沒有看到後面跟著的其他問題。
: 我應該會至少準備四種bug在裡面:
: 1. Runtime error:8元素的陣列,存取指標應該0-7,但迴圈卻用了1-8,或是迴圈條件
: < 故意寫成 <= 來產生此錯誤。
: 2. 極值檢查錯誤,例如除法,我分母塞入0他有沒有想到這種可能,先檢查出來?
: 3. 邏輯錯誤:程式本身運行正常不會有error, 但是輸出的結果都是錯的,他找不找得出
: 原因?
: 4. 錯誤處理:在一定會有錯誤發生的地方他有沒有想到並處理掉?例如連資料庫或是api
: 但是面試的辦公室根本不可能連到。
: 後面這四個都會事前準備好單元測試,面試人交件後自動一跑,看幾個綠燈,就可以大概
: 知道這面試人的細心程度....
: 關於原PO的問題,這應該是我會嘗試的方法。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.216.94.228
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1530937746.A.B14.html
推 peanut97: 推 07/07 13:04
→ htc812: 請問加法怎麼實作?我還真寫不出來.... 07/07 13:45
推 abccbaandy: 樓上? 07/07 13:58
推 GoalBased: 人家問優質 07/07 15:31
→ stupid0319: return inputValue1+inpuValue2;居然有人寫不出來 07/07 15:44
→ yuanruo: & 和^ 跑個loop 不就加法 07/07 15:56
推 ttt95217: 加法是不是要考慮overflow什麼的 07/07 16:06
→ stkoso: 2F是問不用+的寫法吧 07/07 16:32
→ stkoso: 不過既然題目沒限制的話直接用+-*/就好 07/07 16:33
推 b81314: 不用+的寫法怎麼寫 問問 07/07 20:36
→ sarafciel: 這個cal兩個參數沒給型別耶 你們確定可以直接加嗎XD 07/07 23:45
→ AvatarH: 推樓上,沒給型別... 07/08 01:14
推 samblow2000: 型別、小數點第幾位、除數不為0 07/08 01:17
→ clockiller: 覺得用白版考題很沒意義,沒人去思考這件事的必要性嗎 07/08 02:46
→ clockiller: ? 誰寫code用白版? 要考邏輯的話,請給程式設計師鍵 07/08 02:46
→ clockiller: 盤還有螢幕 07/08 02:46
推 stkoso: 考白板就是要找熟練的coder 07/08 09:30
→ stkoso: 常寫就不會再犯compiler能抓出來的錯誤 07/08 09:32
→ AvatarH: 很久以前,C語言要分配陣列空間的時候,要用malloc(), 07/08 16:22
→ AvatarH: 那時候,為了解決二維陣列配置空間的問題,我都使用 Nume 07/08 16:23
→ AvatarH: erical Recipes中的matrix函數,然後我就不需要再被指標 07/08 16:24
→ AvatarH: 和位址困擾了,但是考白板我就掛了。因為我已經習慣呼叫 07/08 16:25
→ AvatarH: 那些我長時間累積的函式庫了,所以我這樣已經不算是熟練 07/08 16:29
→ AvatarH: 熟練的coder了嗎? 另,習慣打字後,在寫字時熊熊有些字 07/08 16:30
→ AvatarH: 明明看起來很像,卻手寫怎麼都覺得不對,這樣就不能算熟 07/08 16:31
→ AvatarH: 練了嗎? 07/08 16:31
→ stkoso: 如果你沒辦法重現你的函式細節 要怎麼說服面試官code有效? 07/08 17:13
→ stkoso: 手寫的部分可以事先請面試官準備電腦 以打字代替手寫 07/08 17:14
→ stkoso: 如果是一些基本的運算 那就在面試時說明這個函數的功用 07/08 17:17
→ stkoso: 對方不接受就代表你們合不來 07/08 17:17