|
|
直接用 oj 看 case 通过率就可以了。全通过的得 100 分。通过率超过 50% 的得 50分,通过率小于 50% 的得 10 分。类似这样。然后根据 head count 筛人比率 3: 1 来把那些人拉去再 进行 1v1 面试,并阐述算法思路等等。比如 headcount 是 150,一共 1000 个人参加考试,有 20 个人得分 100,100人得分 50。那么一共 150 * 3 = 450 人。然后从这 450 人中再选 100 人。
实际上,就算是面试官现场 1v1, 也不可能有 oj 准的,所以面试管的喜好会影响候选人真实的水平。比如有的面试管看你比较能说,觉得你沟通能力不错,虽然你题做不出来,但是是团队的润滑剂,也是很重要的,所以他就给你 offer。但是有的面试管就比较严,看你说得天花乱坠,但是你题做不出来,他就认为你是嘴炮,甚至对你产生鄙视,就不给你 offer,这里面试官的主观爱好就会很大程度影响招聘效果。
而且,1v1 的面试时间有限,只能做几个题,考察范围有限,有些人对 dfs 很上手,而有些人对 two pointer 比较来事,有些人比较喜欢 string,有些人则喜欢 binary tree,如果正好碰到了他喜欢的题,(就跟你玩英雄联盟一样,有些英雄你就是很上手,而有些英雄你怎么都玩不好),那么,对候选人能力得出来的结论就会产生偏差,而笔试就不一样了,各种题都可以考考,时间也非常好控制,题目多就时间长一点,题目少就时间短一点,可以考算法,也可以考网络知识,可以考 tcp/ip,也可以考 linux 系统知识,还可以考具体语言(C++/Java)的某些知识点,总之,可以覆盖的面比较广。
另外一点,有些人在别人看着自己写代码的时候会紧张(怯场),毕竟真实的工作场景不会有人盯着你写代码,所以,弄个考场,还原真实的工作场景。让你安安静静的思考和写代码,最后得出得结果,更能体现候选人真实的水平。
|
|