您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
如何正确的面试??
你的,自己的,面试官如何正确的面试??
发布时间:2019-02-08加入收藏来源:互联网点击:
如何正确的面试? ?
回答于 2019-09-11 08:43:50
回答于 2019-09-11 08:43:50
分享下腾讯技术面试官@nolanyang 的一些技巧心得。
近期几次被问到,面试中有什么技巧可以帮助我们更准确的识别候选人的能力和潜力,去年和一些应届生交流的时候,也了解到了一些他们比较真实的面试体验。
一、面试前的准备
首先是算法题、模拟设计题、智力推理题以及一些开放性问题,这些内容,还是需要提前准备一下题库的,这类准备的问题自己不熟悉的话,后面的很多技巧其实是无从施展的,这些属于平时积累下来的准备工作。具体到发起每场面试前的工作,个人觉得首先筛选简历同样是非常重要的一步,一场高质量的面试需要的时间和精力决定了我们其实是要尽量减少面试场次的,现在校招流行抢简历,然后连续几周每天面好多个候选人,最大的负面影响就是让其中一些非常优秀的候选人觉得我们的面试很敷衍,在后续的双向选择中倾向于放弃这边的机会。至于面试前熟悉候选人简历,这些工作其实是最基本的,每个面试官都应该做到。
二、提问的切入点
结合这两年看到的一些情况,准确的发现和评价一位校招候选人,有个很大前提条件就是面试过程也要让对方舒服并且建立一点信任关系。仅仅是通过一些套路去全面方面的评估一个候选人,最后的结果很可能是我们测出了对方非常优秀但是对方放弃流程。简单的说,就是地毯式的去问大量“我正好知道,我正好擅长”的问题来识别候选人不但效率很低,而且容易导致人才竞争中的落败结果。反过来说,面试开始时提问的切入点放在对方擅长的方向,候选人一般接受度会更高,往往也能更全面的展现候选人的素质。具体来说,面试开始时,一般会让候选人介绍自己并重点介绍一下一下自己最近的项目(课程设计),一般来说,候选人这时候讲的是自己相对擅长的领域。如果能从候选人介绍的项目出发,开始提问与交流,那么很有机会在候选人完全不反感的情况下,识别出一下信息: 1)候选人对过往项目已经完成的部分的掌握程度; 2)候选人平时工作学习中,对一些有扩展性、可以深挖的技术点的态度; 3)候选人对完成的项目中还存在的问题或者可以进一步优化的点的发掘与思考。
这些信息其实就包含了我们常说的自驱力等关键素质,反过来说,如果一个候选人对自己主动介绍的项目中的问题都不能答好的话,面试官很可能是要考虑下来如何有礼貌的节省双方时间,快速结束面试的方法了。到这里说起来很简单,从项目切入提问,谁不会呢?实际上,真要从项目切入,对面试官的要求是非常高的,要能在对方讲述过程中抓到关键点要求的是面试官有非常深的专业积累,直白的讲就是面试官专业能力要够,或者说从项目切入提问这个技巧完全是基于面试官专业能力的。其实很多让候选人觉得突兀的“八股文”问题就是开始于面试官无法从项目抓准关键信息,当然近年来有同学反馈,一些“八股文”问题面试官理解都不太准确,那就更没什么好说了。还是希望拿到面试官资格的同学,至少在面试前针对简历信息多准备一下。
三、开放问题的设计
如果候选人在项目直接相关问题中,表现非常不错的时候,那我们可能需要用开放问题进一步的考察候选人的潜力了。其实就是后续提问中,也尽量不要问“一锤子买卖”的问题。那种知道就知道,不知道也不可能有什么思路的问题,可以问一些,但一定要控制数量。这个阶段最好准备一些面试者即使不知道,也能通过逻辑推理甚至合理猜测得出一部分答案的问题,即开放问题。开放问题是观察面试者思维方式的重要途径,通过良好的设计,甚至能让候选人答完一系列问题后,有一种成就感。这里具体举一个后台面试的常见问题,缓存的设计:面试官可以从缓存的作用,数据淘汰方式的选择这些基础问题开始发问,如果候选人能七七八八讲出来,就可以抛出“数据更新时候缓存不一致”这个问题了,大部分候选人并不知道延迟双删之类的套路,那这个问题就可以变成开放问题了,面试官可以引导候选人一步一步去推导不同数据更新的顺序会导致什么样的后果,在引导几个场景后,问题就可以平滑的变成让候选人设计一个方案,减小数据更新场景下缓存不一致导致的负面影响。这个过程就比较容易看出候选人在经过一系列分析后的思考与总结能力,也可能看出来候选人平时的一些思维方式,同时也通过这个问题帮助候选人学习了一个有通用性的技术点,候选人的感受一般来说也会是比较好的。
总结一下开放问题的设计大概分这么几步: 1)尽量提可以通过分析推导解决的问题; 2)候选人无法直接答出这类问题时,引导候选人进行一些比较直观的分析; 3)让候选人独立分析思考一些相对来说深入一些的场景; 4)引导候选人根据前面的分析,做出总结,如果有必要可以帮助其分析其中仍然存在的缺陷。
四、协作式问题的设计
如果前面的环节候选人都答的不错,那么面试官可以发起协作式问题了。算法题、设计模拟之类问题都可以通过和候选人协作解决的方式来考察。其实方式非常简单,就是面试官提出问题后,候选人短时间内无法独立解决时,面试官可以参与到问题解决中,尝试和候选人协作解决这个问题。这样就可以向候选人提出一些比较复杂但是有实际意义的问题了,相比于最后扔一个 hard 算法题给候选人做半个小时,个人觉得还是好很多的。协作的问题往往比较复杂,一些大牛起手就直接秒了,那就不用多说了,更多的候选人需要通过和面试官的讨论,慢慢找到思路。和开放问题不同的是,协作的过程,给到候选人的建议,并不一定是直达主题的,需要候选人在这个过程中主导解决问题思路的构建。这个过程往往更接近未来工作中一起做项目的场景,所以协作式问题可能看到的是候选人平时解决问题中的沟通、独立思考到做出判断的过程,这种方式识别候选人的一些软素质往往是更加准确的,对候选人综合潜力的判断也非常有效。面试官在这个过程中,过多的是要设计好协作中根据候选人的状态所给予的建议,什么时候展开分析,什么时候做总结这些节奏最好让候选人来把控。
具体总结一些协作式问题的技巧: 1)面试官与候选人协作阶段给予的建议,一般是辅助与补充性质的,虽然要考察沟通能力,但是争锋相对的建议还是尽量不要在开始阶段提出,思考是一个过程,要给候选人一点缓冲; 2)尽快进入共同推导的过程,候选人面试状态下容易盲从面试官的建议,这是很正常,不一定是候选人平时就不爱独立思考,不要以此下判断。面试官自己发表建议时,把一些推导过程亮出来,让候选人补充是进入这种状态很有用的小技巧。 3)这类问题最好是能同时考察候选人的实际代码落地能力的,协作问题实际操作中很容易做到最后候选人思路跑偏了,面试官没能发现。 其实协作式问题,对于面试官的应变能力要求很高,固定套路往往不是很有效,需要面试官平时也能多思考总结自己工作中遇到问题到解决问题的过程。
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |