文章來源:PHP開發學習門戶
地址:http://www.phpthinking.com/archives/778
最近我拜讀很多文章,都是介紹面試問題的,我真心不理解,面試官代表公司想要聘用的是最優秀的程序員,那就意味着需要想出一些有意義的面試問題。如果你就提一些毫無用處的垃圾問題,那麼很容易遺漏很多能幹的程序員。當然如果你覺得你就是要嚇跑這些人才,那麼你就讓人力資源部門來面試而不是真正精通程序的人就可以了。
爲什麼會這麼嚴重?這是因爲問題的答案能反映一個人的情況,而且問題本身也能告訴面試人員有關公司的一些情況。如果面試問題很糟糕,那麼即使面試過程再完美,有可能你挑選出來的也並非最優秀的人才。話說沒什麼人願意和一些技術能力差的傢伙共事,而程序員更加受不了這種情況。至少,我是這樣。
因此,爲了確保能找到真正優秀的程序員,並且不至於嚇跑他們,以下這些問題必須涉及
- 真的,會寫,能寫,代碼
- 能夠把事情辦好
- 可靠
- 有點書呆子性格,樂於助人
- 喜歡學習新事物
基於上面這些要點,我整理出 10 個面試問題。如果是我的話,作爲一個程序員在面試的時候要是被問及這 10 個問題,我會覺得以後我肯定能在這家公司愉快工作。
- 你最喜歡的編程語言是什麼?你討厭哪些編程語言?爲什麼?
- 如果讓你在自己最常用的編程語言上面添加功能,你希望是什麼功能?
- 說一個你曾經參與過的項目,在這過程中經歷了哪些困難,最後如何克服?
- 你有沒有幹過什麼事情最後卻鎩羽而歸?
- 在某個休息天,突然有同事打電話來要你快速回復有關於你最近寫的代碼片段的問題,你會不會覺得生氣煩躁?
- 你被要求去搞定一堆艱鉅的代碼,但是你卻不知道它是如何工作的,沒有文檔也沒有測試,你會怎麼做?
- 在 Zelda 系列中你最喜歡什麼遊戲?你還喜歡哪些?你是否曾想過如果是你先開發的 minecraft,那會怎麼樣?
- 你喜歡什麼網站?
- 你會推薦什麼書作爲必讀?
- 最後一個但並非是最不重要的,請解釋以下名詞:DRY、SOLID、YAGNI、樂觀鎖與悲觀鎖)、MVC 與 MVVM (可自行添加)
此外,寫代碼能力也是不可忽視的。可以讓他們展示自己寫的代碼或者實現一個你現場要求的功能。真正有能力的程序員會爲自己的代碼感到驕傲,所以可以好好觀察一下,看看他們是否樂意並勇於展示自己的代碼。
以上這些問題不但能確保我們聘請到的是真正優秀的程序員,還能保證他們是真正的人才