最近在面试中遇到了很多困惑和无奈,笔者总结了几条,与诸君分享。顺便也谈谈笔者对面试的一些浅解。
困惑一:简历与实际脱节。这个问题现在挺普遍,很多人把简历写的天花乱坠,而实际可能并不具备。前几天笔者面试了一个小伙伴,他在简历里写精通python和数据库,于是笔者就问怎样把一个字符串倒序打印出来,其实的答案很简单,用数列的分片且步长为-1就可以了,或者用一个for循环也可以。结果这个小伙伴告诉我不会,而且告诉我这个很简单,百度一下就可以了。。。当他告诉我可以百度的时候,瞬间我觉得我开始怀疑人生了。
我不知道是我的思维与时代脱节了还是我对“精通”这个词的理解出现了偏差,首先我认为一个人真诚的态度远比他掌握的技能要重要的多,不熟悉的可以在简历说简单了解过,通过查百度解决入门级的问题绝不叫精通。其次,每个人都不是万能的,我们在面试中考察一个人,并不是期望他能解决所有问题(如果能,当然更好),我们其实考察的是这个人解决问题的思路。当然去查百度解决问题并不在解决问题的思路范畴内。
困惑二:“我觉得”怪圈。很多人在面试的沟通中,非常喜欢用“我觉得”来开始回答问题。因为我比较喜欢用非常具体的场景来提问,那么在该场景中按照逻辑上来讲,必然存在着确切的因果关系或特定的解决方法。如果一切都是“我觉得”,那么意味着测试本身就是建立在主观因素上的,这我想大家都是不能同意的。
举个实际的例子,笔者很喜欢问的一个问题“比如我在商店中购买了一件道具,购买道具用的金币扣除错误,请问这是前端显示错了还是后端计算错了?”这个问题笔者认为至少有好几种方法来确定,我们也希望面试者能尝试给出怎么来判断这个问题的思路(比如,查看网络包,查看数据库,退出重登,查看代码,再次购买等),而不是“通常以我的经验,我觉得这个是后端错了。。”。
困惑三:无逻辑的天马行空。这个现象也比较普遍,例如经典的面试题,如何测试一台自动贩卖机?这道题很大程度上考察了面试者的测试用例设计能力,逻辑是不是清晰,覆盖度是不是广泛等基本功。很多基本功不扎实的小伙伴在回答的时候一会说测试硬件,一会说测试软件,夹杂着各种互不关联的步骤。笔者很怀疑这样的用例是否能执行,或者执行起来的效率和难度是否是合适的。
这道题笔者看来可以用层次法来分析,第一层是大的软件和硬件2部分,第二层是分别针对软件部分和硬件部分进行拆分成大的模块,比如软件部分的购买模块,显示模块,退款模块等等,硬件部分的电源模块,外壳模块,出货口模块等等,第三层再针对第二层的模块进行细分,这样一层一层的去拆分,不仅逻辑清晰,而且不容易出现遗漏。
困惑四:经验与经历。几乎所有人的简历里都会写自己有xx年的工作经验,在笔者看来,xx年的工作,有时候可能并不能算作经验,仅仅是经历。对有的人来说,可能xx年都在当一天和尚撞一天钟,仅仅是应付差事,并没有全身心的投入到工作中。
请各位小伙伴思考一下,我们自己负责的工作,有没有在我们负责的期间有所提升或改善?有没有尝试着哪怕仅仅是思考去让自己的工作更完美一些?有没有尝试去承担更多的责任从而带给团队更大的价值?有没有坚持不断的去提升自己?
以上的几点大家思考一下,是否在工作期间思考或行动了呢?如果没有,那你的工作仅仅是经历。也许有小伙伴会反驳我说,那些都是领导们应该做的事,我只需完成自己的任务就好了,对不起,在笔者看来,我们每个人都是领导,一件事没人去做或没人愿意去做,你主动承担了,并完成了,那么你就是领导。
困惑非常多,这里简单的写了几条常见问题,希望能对小伙伴们有所帮助,也欢迎小伙伴们一起探讨。