首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我的面试心得:面试官视角

我的面试心得:面试官视角

作者头像
Peter Lu
发布2018-06-20 10:22:56
5330
发布2018-06-20 10:22:56
举报
文章被收录于专栏:LETLETLET

工作十年整,面过的人加起来也得有一个加强营的阵容,其中应届生居多,也有几个十年工作经验的老鸟。面试中,有人谈笑风生,有人惴惴不安,人生百态不过匆匆一瞥。今天我就当一回老司机,以C++面试为例,和大家分享一下自己的心得。

面试者想象的面试场景

“出门左转富士康”,这样的预约方式过于粗放,措辞还是要精简得体,毕竟是双方的第一印象兼顾公司形象。一定要留下你的联系方式和称呼,否则人家到公司前台一脸懵逼不知找谁,也增大了其他团队劫胡的风险。另外,我个人会强调准时,我对准时的定义是[+5,-1],单位分钟。如果早到30min,out,迟到且不提前通知,out,迟到但找到一个理由,斩候决。

某团队的校招方式

如果简历写的牛逼,我会花一小时准备,了解一下我不懂他很懂且我很感兴趣的部分,目的是保证交流效率。这里说明一下,面试官多少也有心理障碍,怕丢面子之类的。我是这样克服的:面试的目的不是问别人不会的,而是找到别人擅长的。就当参加一场讲座,你是主持人兼提问者,人家还是上门服务,放下姿态,权当不耻下问了。

作为开场白,简介一下面试官情况,目的有两个,让他对我们有个了解,面试时有的放矢,其次是暖场。然后开始自我介绍,这时我会扫一下简历:个人信息,技能和项目经历,兴趣爱好和英语水平,做标记。

面试猿看颜值的正确姿势

自我介绍中,有一些人支支吾吾连话都说不清,无怪乎紧张和二逼两类。前一种你就得随和一点,让他聊一些最近面试的遭遇,家庭和故乡等内容,缓解情绪,毕竟人都来了。后一种情况也分牛逼或傻逼两类,只能拼操作,是友是敌一看便知。多数人的自我介绍都较为普通,我会留意和简历内容是否一致,如果简历中你感兴趣的部分他却没有讲,则适当提醒。还有一类很会讲故事的人,太会带节奏了,我表示压力很大。一见如故,相见恨晚的感觉有没有,这时候一定要用凉水洗把脸,看看简历里面标记的地方,他的回答是否可行,编程是一门手艺,眼高手低要不得。

技术环节是我最关注的部分,基本功是顿悟不出来的,最能体现了一个人严于律己的学习态度。针对C++,我最爱的两个问题是字节大小和快捷键。“char/int/float/double各占几个字节?”这问题不能再简单吧,你可知道,这个问题至多20%的人能全部回答正确。如果回答不满意,我会再详细问一下编码常用的快捷键,间接了解他的编码量。有一次,一个工作将近十年的C++开发人员,类型大小说错了大半,快捷键也说不上来一两个,我就问他,你现在主要是带团队,负责技术预研和提供思路呢,还是自己亲自写代码。大哥听完我的问题差点发飙,直接扔给我一句”当然自己写了“。

技术岗位,我们强调的是动手能力

字节大小只是序曲,最近几年涌现出一些培训班出来的机器人,问题还没讲完 ,他那儿就开始Rap:32位,64位,指针,字节对齐,大小端,float和double的精度,我看着他,目光所到之处已是满屏的666,可咱又不能怪人家知道的太多,那就刷一波鱼丸呗?这时候你要记住,机器和人的差别是机器不会出错。你问问他犯过类似的错吗,为什么字节要对齐,为什么字节对齐会提高性能,浮点型为什么会有精度损失。这些都是C++的基本功,相比答案,回答的过程更能体现他的理解深度。

如果回答都很满意,则可以基于这个话题深入了解。微观来看,指针&内存,数据结构,如果他对STL有研究,内存管理,性能优化,二叉树,哈希表,或许会扯到具体的算法,术业有专攻;宏观来看,引用,临时变量,生命周期,NRV优化,静态库和动态库,用过哪些开源库,也是各有所长。这个时候,C++已经不是他的短板了。另外,他回答不上来的问题,我一般会以关键点的形式快速高速他找到答案的方法。如果他讲到的技术我不懂,我会让他详细讲,并复述一遍我对此的理解和关键点,看是否正确,如果有必要,会让他推荐一些书籍。我只问自己知道答案的问题,如果他提到的内容我不明白的,我会问到满意为止。

回答“面向对象”时正确的高度

“谈谈你对面向对象的认识?”通常,99%的人都会讲封装继承多态,或者再说一说虚函数,虚函数表这些语法层面的理解,个人觉得语法只是思想的外在规范,但真要从思想上体会到这些抽象设计的缘由,并不太表达。好比张无忌学太极,张三丰不是问记住了多少,而是问他忘记了多少。后来我就不再问这类问题了,你不问不代表队友不问。有一天的早上,我看到《C++沉思录》才如梦初醒,总结了几个我自己满意的答案:模块化,基于状态的管理和分而治之。大道至简。

项目和产品经历,这个环节我就松懈了,听听别人的问题查缺补漏,看看他能否把一个项目流程说清楚,把握技术关键点,在团队中承担的角色,遇到问题的解决思路。我会问他使用的浏览器和搜索引擎,我的最佳答案是Chrome+Google。

一个出色的程序员往往精通好几门语言

反之,我更关心他的个人规划,兴趣,学习能力,特别是英语水平。最近看了哪些书,给我推荐一本。还有一个问题,我从来没有问过,如果下次遇到合适的人,我会问“有什么观点是大多数人认同的,而你持相反意见的?”这是彼得·蒂尔的问题,不知道你会怎么回答?

最后环节是回答他的问题,通常也就3min以内。有些人会问待遇,加班,产品,团队,入职后是否有人来指导,让你对他们的学习给出一些建议和推荐的书籍,有问题总比没有问题好。当然,有一次那人的问题实在太多了,一个接一个,我只好说这是最后一个问题。

文章的最后谈一下想法,个人并不认可面试这种一锤子买卖的行为,特别是应届生,如果他基本功不扎实,但学习能力很强,这种人很难通过面试鉴定出来,而这部分是面试中的主力。所以,放松条件,让大四的学生来实习,宽进严出,双方都有利可图。

以上是个人面试的一个不客观体会,纯属虚构,如有雷同,欢迎追究法律责任。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-12-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 LET 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档