關於面試的換位思考

我當面試官時

以前公司招後端程序員的時候,我負責考察面試者golang的掌握程度。程序員

一般我是要求面試者上機用channel寫一個多常駐協程的任務隊列,而後再不斷的延伸發問,考察面試者對goroutine和channel的掌握。golang

若是面試者寫不出來,我基本是不給過的。由於這是我認爲的一個golang程序與其它語言程序最大的不一樣,若是寫不出來就表明沒真正的用過golang。面試

我當面試者時

風水輪流轉,公司由於融資問題,經營不下去了,我只能再次踏上找工做的路。redis

雖然說在這份工做中,我獲得了本身想要的golang工做經歷,可是對golang語言細節的掌握仍是有些粗糙的。而轉型當互聯網行業的開發後,我對redis和kafka之類mq的使用,還未曾有過深刻的使用,也成了本身的軟肋算法

最近的一次面試,就是掛在了這上面。數據庫

關於,golang的GPM、協程的調度方式,包的初始化順序等細節問題,我沒有答上來。加上恰恰他又問我有沒有用過redis和kafka,和數據庫有幾種鎖。。後端

雖然說這些知識點不是徹底不知道(但回答的不是很準確),可能會缺少解決某些問題的能力,但具體是哪些問題呢?面試官又說不清楚。工具

我以前是不大承認這種搜索就能獲得答案的問題,但換個角度來想。學習

一個面試官如何考察面試者的水平?

無非是基於他認爲是重要的知識點!因而,難免有認知偏見。設計

話說回來,對於一個工程師而言,最重要的不該該是他的學習和解決問題的能力嗎?

對於一個資深的程序員,分析問題併合理的設計可擴展可維護的方案不才是他的價值所在嗎?

那麼,爲何面試時確要用語言細節+使用的工具經驗來考察面試者呢?甚至還會是用純算法來考察面試者?

想來想去,個人初步結論是:學習能力、解決問題的能力和設計能力難以被量化衡量,因此只能間接的借用一些特徵來輔助判斷,好比說語言的掌握程度、算法能力等。

再加上國內的互聯網企業的招聘更重視「開箱即用」,因此纔有用沒用過、知不知道之類的問題吧。

接着換位思考一下,若是面試者這些不知道、沒用過,只表示說願意學,確實對面試官沒很大的吸引力,畢竟來面試的人又很多。

寫到這時,忽然領悟,面試的考察方式在根本上取決於究竟是買方市場仍是賣方市場

好吧,趕忙睡了,明天還要抓緊刷"面試常問題庫"呢 ^_^

相關文章
相關標籤/搜索