首先简单说一下面试,一场面试,候选人和面试官,对立的双方,在进行一场几乎是自己智商极限的对决,面试官初始占据一些优势,但是一旦在面试的过程中把握不好,错失掉自己的主动,往往也会被人指责没有能力,技术一般的字眼。而如果在面试的过程中用力过猛,则往往打的候选人信心全无,没法具体看出来一个人水平的高低。所以说,面试对于候选人来说可能仅仅是一场挑战,但是对于面试官来说,则是一个擂台,一方面你要守住擂,一方面你还要发现出来真正的人才,当然有些时候还需要你个人能够抓住候选人的心思,对候选人构成吸引。
我们是做技术的,面试不是我们的专业,但是同时,我们是做技术的,是世界上最理性最具备学习的一群人,所以我们可以以程序的方式,用if-else来进行我们的面试。
首先,了解一下我们的面试流程,一个面试一般包含,自我介绍,技能问答和互问互答几个阶段,在每个阶段,作为面试的发起方,我们面试官都应该有方法能够引导和推进一次面试。
面试三板斧:
第一板斧,自我介绍,如同任何的会面都会以简单的介绍作为铺垫,面试的开端往往都以候选人的自我介绍开始,这里面往往就存在一个问题,有经验的面试者会在自我介绍的时候自然不自然的影响面试官,让接下来的面试往自己的方向走,这个其实特别的好,因为我们面试要发掘的就是候选人好的一方面,但是,这时候应该特别的注意一点,作为面试官在被候选人带走的同时,不要忘记自己总有一些点儿是需要考察的,比如一个人的基础编程能力,基本的逻辑思维能力,沟通的能力等等,如果候选人带你走了一圈之后这些东西并没有被表现出来,那么这时候我们就需要把自己的问题塞入面试者的沟通过程中,来得出自己的结论。但是往往的,我们的面试对象都是普通的程序员,大部分都不太会自己组织面试,自我介绍往往仅仅包含学校,工作经历这些流程,其实对于技术面试是没多少用处的,所以这里要提到的就是自我介绍的第一板斧,学会发问。从应聘者的简历的侧重点来划分的话,大部分的面试者都可以被分为两类,一类是展现技术的,大量的技术名词被堆砌在简历里面,经验里面也充斥着不同的技术以及体验,这种候选人是我最喜欢的类型了,因为他的这些技术关键字给我们提供了无数的提问的空间,所以,针对这种类型的候选人,我都不会让候选人的自我介绍单纯的按照自己的思路来,一般会提出一些要求,比如,要说出来自己工作的内容以及团队构成,或者使用的开发管理模式等等,你可以看出来这个是偏离了技术的,原因很简单,对于一个展示自己技术很多的人,我们将会在技能问答的环节获取大量的信息来判断这个人的技术如何,但是任何软件开发都不是一个个人行为,所以我选择在自我介绍这个环节让这一类型的候选人更多的来描述自己是如何工作的,以查看候选人的团队合作能力和沟通能力,如果这些方面存在问题,人员也是无法使用的。现在来说另一类,这一类的面试者的简历里面除了在自己的技能部分简单的罗列了一系列的技术名词之外,剩下的内容主要说明了自己所参与过的项目以及项目的介绍,其实这一类的候选人更加难以甄别一些,因为留给我们的发问点儿并不多,所以需要在自我介绍的阶段让对方暴漏出来更加多的可以在后面阶段发问的内容,一般我都不会让对方自我介绍,而是说介绍一下最近一份工作的内容,不如你们用了什么样的技术,解决了什么样的问题,如果自我介绍阶段继续没有拿到我想要的内容,我会补充一个问题,介绍一个自己解决的比较得意的问题,以方便自己切入到提问环节。
第二板斧,发问的艺术,兵无常势,水无常形,所以说面试也不存在一成不变的套路,自我介绍环节,面试官只需要一两句话然后就去聆听和观察即可,但是在发问阶段则需要花更多的心思,问的好了,不然候选人的能力跃然而出,同时还能对候选人直接形成技术吸引力,问的不好,不着边际,候选人往往会对你的问题不以为然,比如明明一个人没有做过数据库相关的内容,但是你面试的问题三句不离数据库,那么不论候选人的真正能力如何,已经很难面试出来真正的水平了。那么在提问的环节,具体的我们应该怎么去发问呢?还是要回到前面说的两类人,一类人已经给了你充足的发问空间,那么就问吧,对方罗列的技术,首先简单的问一遍理解,然后问一下项目的使用程度,最后再问一下技术的原理,这时候有人问了,候选人全答上来了怎么办?当然是内心欢欣鼓舞,表面默不作声喽,的确是个不错的人才,但是要想让人进来,一定不能让对方过于得意,接下来为了后面面试的需要,需要简单的打压一下,问一些比较深入的问题,问一些难一些问题的解决方案,如果对方依然对答如流,那么恭喜你,人真的很不粗,试试问问算法和计算机原理,操作系统这些level的内容,如果依然可以,那么就结束这个环节算了,对方是个高手。(高手毕竟很少,所以勿需担心)。经过前面的一通发问,这个人对于自己的技术的领悟能力,以及学习的能力和态度就已经出来了,只是粗枝大叶的知道的可以直接过滤掉,不能说出来技术原理的建议进入下一环节查看但是最好是多个人之间进行对比,既能说出来原理,又能不停深入的,这个嘿嘿,真的不需要犹豫了,直接进入下一环节。OK,说完了比较好面试的,现在来说一下简历里面没有留下多少技术点儿的,往往的这种人要么是对技术不是很有信心所以规避,要么就是另一种极端,技术真的很好,对于软件的认知很全面,知道技术不是重点,后一种人真的是可遇不可求,所以我们还是针对前一种来说。对于这种面试我们只能走套路,什么叫做套路,就是把我们工作中所用到的技术一个个拿出来发问,先从基础开始,然后数据库,并发,服务器,网络以及解决问题的思路,最后别忘记考察一下具体的代码思维能力,比如简单的描述一个小算法或者设计模式都是不错的选择。其实这一类人是最难面试的,因为没有把自己最擅长的方面表现出来,所以往往会有一些人错失掉,这个我们只能表示默哀。
第三板斧,总结以及相互交流,一般能进入最后这个环节的人都是我比较满意的,所以一般我都会多说两句,或者是针对刚才的面试的简单总结,或者是分享一些在某些方面自己的心得,简单的吸引一下候选人,然后偷偷的抛出来最终的杀器,你有什么想问我的么,这个表面看起来是一个比较无厘头的问题,但是如果对方是在那种可选可不选的人上面,如果对方无法问出来针对刚才的短板相辅相成的问题,那么基本就错失掉这次机会了,怎么讲呢,比如一个候选人技术一般,但是交流起来还可以,那么我期望对方问出来一些自己的技能应该怎么和工作匹配相关的问题,这说明对方自己了解自己的长处,价值还是比较大的,而如果对方问出来的是一些比较偏僻的技术问题或者简单的问一下你们使用的技术,那么基本已经无法作为加分项了。同理如果一个技术面试还可以但是感觉交流存在一些问题的人,如果问出来的问题继续偏执于技术,那么这时候往往会让我心生疑虑,这个候选人会不会过分偏执而导致团队合作的问题。当然了在问这个之前一定要提前说明白对方的一些问题,如果一个人当时就反省了,那么人嘛,有些短板是自然的,毕竟作为面试官,进来之后我们还负责培养不是?
分享到:
相关推荐
#### 一、深度学习面试的重要性与内容概览 深度学习作为人工智能领域的重要分支,在当前科技发展中占据着举足轻重的地位。随着技术的进步和应用场景的不断扩大,深度学习工程师的需求量也在逐年增加。因此,对于...
在C#面试中,深度理解技术...以上只是C#面试中可能涉及的一部分技术点,深度理解意味着不仅要知道这些概念,还要能够应用到实际问题中,解决复杂编程挑战。通过不断的实践和学习,你将在C#面试中展现出深厚的技术功底。
### C语言深度剖析——程序员面试笔试必备知识点 #### 一、引言 随着信息技术的快速发展,C语言作为一门历史悠久且应用广泛的编程语言,在现代软件开发领域依然占据着重要的地位。然而,很多程序员对于C语言的理解...
阿里云技术面试红宝书是一份专为求职者准备的宝贵资源,涵盖了阿里云在招聘过程中可能会涉及到的技术面试真题,特别是针对大数据和数据库领域的专业知识。这份7z压缩包包含了核心知识点的PDF文档,旨在帮助应聘者...
下面将对这些领域进行深入解析,帮助你更好地准备Java相关的技术面试。 ### 字符串(String) 字符串在Java中是常用的数据结构,面试中经常涉及的话题包括字符串的不可变性、字符串连接效率、`String`、`...
通过对阿里巴巴技术面试的总结,我们可以看到,掌握扎实的基础知识和技术深度对于成功通过面试至关重要。特别是对于Java开发工程师而言,了解HTTP与HTTPS的工作原理、熟练掌握Java垃圾回收机制、深刻理解Spring框架...
以上内容仅为《MySQL面试精粹:90%场景题深度剖析》书籍中的一部分。本书还详细介绍了事务与锁机制、索引策略、复制机制、InnoDB存储引擎等内容,旨在帮助读者全面掌握MySQL的核心技术和面试技巧,无论是初级工程师...
这份“深度学习面试宝典”涵盖了数学基础、机器学习、深度学习、计算机视觉、自然语言处理以及SLAM(Simultaneous Localization and Mapping,即时定位与地图构建)等多个关键领域,旨在帮助求职者全面准备深度学习...
《C语言深度解剖-面试宝典》是一本专注于C语言技术面试的指南,它深入剖析了C语言的核心概念和重要知识点,旨在帮助求职者在面试中展现出扎实的理论基础和实践经验。书中涵盖的内容广泛,从基本语法到高级特性,再到...
《深度学习500问》是一本非常实用的深度学习教程资源,由GitHub用户scutan90编写并分享。这本书涵盖了深度学习领域的诸多基础知识、理论概念以及实践技巧,旨在帮助初学者和进阶者深入理解并掌握深度学习的核心概念...
根据提供的信息,我们可以深入探讨与“Java常见笔试、面试题目深度剖析第二、三讲”相关的知识点。虽然直接的视频或文档链接无法在此处查看,但根据标题和描述中提到的信息,我们可以推测出讲座可能涉及的一些核心...
### Java常见笔试、面试题深度剖析之String相关 #### 背景介绍 在Java编程语言中,`String` 类型是最常用的数据类型之...掌握这些知识不仅可以帮助我们在编写代码时更加高效和准确,也能更好地应对技术面试中的挑战。
### 深度学习常见面试题解析 #### 一、基础知识题 1. **深度学习与传统机器学习的区别** - **定义与方法**:深度学习是机器学习的一个分支,侧重于构建多层的神经网络来模拟人类大脑的学习过程;而传统机器学习...
以上知识点是机器学习和深度学习面试中常见的问题,深入理解并能灵活应用这些概念是成为一名优秀的AI工程师的关键。在面试中,不仅需要理论知识,还要具备解决实际问题的能力,如模型调优、特征选择和模型评估等。
在本讲“Java常见笔试、面试系列深度剖析第2讲”中,主讲人张龙与风中叶共同探讨了Java编程语言在实际面试和笔试中的核心知识点,旨在帮助求职者提升对Java技术的理解和应用能力。以下是本讲中涵盖的一些关键知识点...
探讨模型评估指标的选择(如分类任务的精度指标、回归模型的平方损失等)、解决过拟合现象的技术措施等,并具体剖析了深度学习尤其是卷积神经网络的工作机制。这份材料是应聘者准备技术岗特别是AI相关职位的理想助手...
在Java编程领域,面试和笔试环节常常涉及到对技术深度和广度的考察。"Java常见笔试、面试系列深度剖析第三讲"可能涵盖了一系列关键概念,旨在帮助求职者或开发者更好地理解和掌握Java的核心特性。其中,"反射详解"是...
《机器学习与深度学习面试系列九:降维——PCA与LDA解析》 降维是机器学习和深度学习领域中的重要技术,其目的是...在面试中,理解这两种方法的原理、应用场景以及优缺点,有助于展示对机器学习和深度学习的深入理解。
### JAVA技术面试题知识点解析 #### 1. 前台与后台开发能力 - **题目解析**:此问题旨在了解应聘者对于前端(前台)和后端(后台)技术的掌握情况及其偏好。 - **核心知识点**: - **前端技术**:包括HTML、CSS、...
卷积神经网络(CNN)是一种在机器学习和深度学习领域广泛应用的神经网络架构,特别适合处理图像数据。CNN的核心特性在于其卷积层和池化层。 卷积层是CNN的基础,它解决了传统全连接网络在处理图像时面临的两个主要...