之前写过从应聘者的角度来分析面试,今天王豆豆想以面试官来分析如何去做面试。
以前王豆豆在培训机构时也会帮助学员做模拟面试,刚好今年公司招聘软件测试工程师时,有幸去做过几场面试,因为有了实际的招聘需求,面试问题覆盖面就更广,王豆豆就分享一下王豆豆是如何去面试软件测试工程师的。
01
在面试之前,首先你要确定你是想招一个什么样的软件测试人员,来承担哪一部分的工作,以及你想要他为团队带来一个什么样的效果.
比如我们公司今年招聘主要是围绕二类测试人员来进行招聘的:
一类是技术能力很强的,准备将其放到基础服务部门,希望招聘进来的小伙伴能承担自动化测试/性能测试等专项测试工作的搭建、部署等工作,基于这点就需要应聘的小伙伴有过从零开始做自动化/性能测试的经验;
一类是业务能力强的,这个是准备将其放到业务测试部门,这需要应聘的小伙伴有过相似的业务测试经验,如果没有需要考验应聘者学习能力,思维活跃度,对测试的见解如何等方面来判断小伙伴是否能承担对应的工作。
根据部门的需求来筛选由HR提供过来的简历,确定面试时间,这就和测试工作很类似,如果你要测试某个功能或业务,那你需要对其需求有至少90%以上的了解,才能开展测试,剩下的10%可以放到测试进行时去深入,为自己部门招聘事先一定要清楚自己想找一个什么样的人,不然就会出现HR将应聘者叫来面试,然后面试几分钟就发现此人不合适,这无疑是浪费大家的时间。
02
前期的准备工作都做好,那就可以开始正式面试了。
第一个环节,了解候选人,这时首先会让面试者做一个自我介绍。
这一个环节让面试者做自我介绍,想要达到以下几点:
1.了解面试者的经历,你可能会说简历上面不是都写了,自己看就行了,王豆豆面试之前一般都会看,并且分析一下,根据工作经历去设计几个主要的面试问题,但面试时王豆豆更需要面试者自己说出来,有时写和说是完全二回事。
2.根据面试者自我的介绍,大致判断此人沟通能力和逻辑思维能力,一般从语速、流畅度、内容链接、面部表情、说话时动作等方面来判断
3.判断面试者的性格,也是根据语气、语速、表情、动作等方面
后面二点会在面试过程中一直都有考察,也就是从面试开始到面试结束,送面试者离开都会考察。
第二个环节,深入了解候选人
当面试者自我介绍完成之后,王豆豆就会根据面试者在自我介绍时的内容进行提问,大致会分以下几个方面:
1.测试流程
面试题: 请介绍一下你们的测试流程? 你们是如何做软件测试的? 你们什么时候开展自动化测试? 你们自动化测试的流程是怎么样的?等等
大致是这些问题,可能每次问的方式不同,但其中心思想就是了解一下面试者公司是如何开展测试的。
为什么要考察这一点?
如果测试流程区别太大,面试者应聘成功后能否快速开展工作,比如有些测试人员公司文档很齐全或流程很规范,那他应聘成功某类没有需求文档或测试流程来约束测试和开发,他是否能快速开展工作。
这比他以前的公司需要多做很多事情,如需要依靠自己去梳理需求或找开发沟通,测试人员会否习惯。
一般不会招聘流程区别大的面试者,因为这是一个不稳定的潜在风险。
如果面试者所从事的公司流程都不一致,那就会再额外设计一些其他流程中工作内容面试题来加以判断,看面试者是否还接触过其他测试流程。
2.工作内容与职责
面试题: 你在你们团队承担哪一部分的工作? 你做得怎么样?有没有什么成果? --上面这个问题大部分是针对自动化测试的,有部分大牛在测试团队中会自己写测试框架或测试工具,那还会额外问下推广如何 你是如何设计测试用例的?一般写测试用例的工具? 你们的需求/用例是如何做评审的?效果怎么样? 平时工作中,你是如何提取测试需求? 额外会问,如果没有需求文档,你是如何提取测试需求?有哪些方法? 缺陷的处理流程? 有没有碰到过难以定位的bug?最后是如何解决的? 你们是如何做接口测试的?
上面的面试问题主要是考察面试者的工作内容,平时有没有对这些工作内容总结过原图和方法。
3.掌握的技能
这个阶段主要是考察面试者的技能,一般会根据面试者自身的情况来问,大体会围绕着Linux、SQL、接口测试、自动化测试、性能测试这几维度来问,可能是实际的操作,也可能是概念的问题。
比如说:
针对linux,可以问: 1.如何结束后台或前端进程? 2.查找某个进程的命令 3.查看日志文件 4.替换文件中某个字符串 等等,很多,这个根据当时想到的是哪个就问哪个
针对SQL,因为测试人员大部都只会用到SQL语言,所以面试时问到也是这个:
1.左连接查询和右连接查询的区别?这个是很公司都喜欢问,王豆豆问得比较少 2.查询某个字段值数量大于2的值有哪些? 3.如何提升查询效率
还有的其他问题基本有:
1.selenium 2 的原理---这个是问得最多的 2.用什么工具来做接口测试? 3.接口测试需要注意哪些? 4.接口测试的参数怎么设计? 5.你是怎么进行性能调优的?
除了以上的问题,王豆豆还会设计一些场景题问,这主要是考察测试人员的测试思维、思维活跃度、反应能力,如果是面试者没碰到过的功能,还可以看下面试者的学习能力。
一般王豆豆就问以下几个:
1.登录界面如何设计测试用例?---针对功能 2.拿淘宝来说,如何测试购物时优惠券功能? 3.有一个查询消息和回调消息的接口,我们可以主动去发起查询任务,也可以让对方系统将消息回调给我们,针对这个接口应该如何去设计测试用例?
以上的问题基本就是面试过程中最重要的那部分,面试到这个地方,基本就能判断此人是否是我们所需要的。
第三个环节,收尾
这个环节,分二步走:
1.问面试者基本情况
1. 上家公司离职的原因 2.接受加班不?---因为项目情况,有时会经常加班 3.住在哪里?看上班距离 4.有没有小孩子?谁带?
2.第二步主要是问面试者有没有什么问题想问
这个时候,大部分面试者都比较关心公司的平台和业务、测试部门项目情况、测试部门岗位划分,这时就会向面试者介绍公司的情况,产品业务,运营模式,测试部门的情况等。
也有面试者会关心福利问题或加班情况,基本按实说就行了。
这个时候如果面试者没有问题,那基本面试就结束,如果有下一轮,就让面试者等待,然后找HR再安排。
03
作为一个面试官面试应聘者时,要结合公司的实际情况来进行面试,你想找一个什么样的人,解决什么样的问题,事先都需要明确。
在面试过程中就根据这样的标准去选择,对于公司来讲,招聘和培养人都有成本的,所以对公司来讲,如果应聘者来上班了,那肯定希望新人能快速上手,并且要稳定,这也是我们经常说的,你要么不来,来了就能稳定下来。
故在挑选新人时,会考察新人的性格是否适合公司的氛围和同事能否愉快相处等因素,这些因素都有可能会成为离职的因素,那么在源头就要控制好。
如果有小伙伴面试了某家公司没有面上,那有可能是不是你的原因,而是这个公司不适合你。
能否应聘成功主要是取决于这一场聊天是否能愉快的聊下去,就像王豆豆面试过一个做过性能的测试人员,问了一些问题,如果他能给我讲清楚,这也是一种能力,像这样的也会考虑。