如何做一个好的面试官?


=Start=

缘由:

无论市场竞争激烈与否,优秀的候选人和好的公司其实都是在进行一个双向选择。在作为候选人时,你要做的是尽可能的提升自己的水平、能力,有针对性的做准备以提高面试表现,获取更多更好的机会;而在作为面试官时,你也要做好准备,为公司挑选/吸引更好更适合的人才,因为此时你是作为公司的代表在和候选人进行沟通,要把握好机会,不辜负公司对你的信任。

这里整理一下最近以及之前看到的比较好的给面试官的一些意见和建议,方便自己参考和学习。

正文:

参考解答:
一、明确面试目标

在大公司里面,一般已经有HR帮你筛选出了一些简历,然后你的leader会给你分配一些简历让你进行沟通。

这时,你要先和leader确定好你是几面,你要关注的重点在哪?是候选人的基础知识、专业技能、价值观、发展潜力还是什么?避免在多轮面试的过程中对候选人进行重复询问(有损用户体验),同时也好抓住考察重点深入了解(比如和当前业务部门的用人需求契合度)。

二、针对性准备面试题目

一般性的指导原则就是根据候选人的简历所写,有针对性的设计面试题。

面试题目的设计一定要有同理心,简单的讲就是要学会换位思考,要站在候选人的角度去看待面试题目是否合适,是不是难度太大?题目背景是否容易解释的清楚?是否能让候选人对题目的理解跟面试官一致等等。这一点听起来比较简单,但做好比较难。张小龙说过最牛逼的产品经理要有能瞬间把自己变成小白用户来认识自己设计的产品的能力。我们在设计面试题目的时候,也要学会放空自己,努力做到忘记答案,再去考量这个问题的难度。不过我们还有一个侧面的方法了解面试题目设计的是否得当:先把题目讲给周围的同事听,看看他们是否能很容易的理解,能够答出来。

面试题目最好能层层递进,先从简单的问起,如果候选人能很好的回答,再继续深挖,逐级递进,当面试者无法继续回答出来时,大体上就能知道面试者对此方面知识掌握的深度了。

三、一些注意事项

避免问记忆性问题和太理论性问题!!!

不要表现出居高临下或是傲慢的态度!!!要把面试当做一场平等的交流、沟通。

尽量由浅入深,层层递进!!!先用简单的问题让候选人进入一种较放松的状态(以更好的表现出他的真实水平),然后逐步深挖,确定能力水平。

  • 要实际案例(细节),而非理论套路!!!
  • 要实际案例(细节),而非理论套路!!!
  • 要实际案例(细节),而非理论套路!!!

对于比较好的候选人,可以进行适当的「吸引」,因为好的候选人是很难得的,他们的选择也会比较多,你要给出一个能让他选择你们公司/部门的理由。

四、STAR模型
  • Situation(情景)
  • Task(任务)
  • Action(行动)
  • Result(结果)

示例:
举个例子说说你擅长性能优化。

要点:
当时具体是面临了什么情况,需要做什么来应对(为什么你觉得要这样做?),而你实际采取了什么行动(为什么采取A行动,而不是B行动?),最终达到了什么效果(是否符合预期?是否还有近一步的改进空间?下一步的计划是什么?)。

理念:
在收集 STAR 的时候不断提出更加深入的问题来判断其对该问题/方向的认知/理解程度以及抗压能力。

五、面试评价/评分/反馈

最好在面试的过程中就进行实时记录(比如:按STAR模型的各方面进行记录,遇到候选人表述不清楚或存在遗漏的地方进行补充性追问)。

另外就是,尽量忠实的进行面试记录,然后对照各方向的标准和要求填写面试评价及打分(这也算是对之前的面试过程进行一个复盘),最终给出你的面试反馈。

 

参考链接:

=END=

,

《“如何做一个好的面试官?”》 有 23 条评论

  1. 过了技术面却在HR面被刷?必备40问!从容应对HR,斩获N多大厂offer!
    https://mp.weixin.qq.com/s/mVs9gYIwLg0FDyUNXZwfhg
    https://blog.csdn.net/youanyyou/article/details/79677903
    `
    先让心里有个底,对于部分问题可以有个大方向的答案,但是并不建议“背题、背答案”。
    一波问题来袭……
    1、请你自我介绍一下?
    2、你觉得你个性上最大的优点是什么?
    3、说说你最大的缺点?
    4、你对加班的看法?
    5、你对薪资的要求?
    6、你的职业规划?
    7、你还有什么问题要问吗?
    8、如果通过这次面试我们单位录用了你,但工作一段时间却发现你根本不适合这个职位,你怎么办?
    9、在完成某项工作时,你认为领导要求的方式不是最好的,自己还有更好的方法,你应该怎么做?
    10、如果你的工作出现失误,给本公司造成经济损失,你认为该怎么办?
    11、谈谈你对跳槽的看法?
    12、工作中你难以和同事、上司相处,你该怎么办?
    13、你对于我们公司了解多少?
    14、请说出你选择这份工作的动机?
    15、你最擅长的技术方向是什么?
    16、你能为我们公司带来什么呢?
    17、最能概括你自己的三个词是什么?
    18、为什么要离职?
    19、对工作的期望与目标何在?
    20、就你申请的这个职位,你认为你还欠缺什么?
    21、你通常如何处理別人的批评?
    22、怎样对待自己的失敗?
    23、什么会让你有成就感?
    24、你为什么愿意到我们公司来工作?
    25、你和别人发生过争执吗?你是怎样解决的?
    26、对这项工作,你有哪些可预见的困难?
    27、如果我录用你,你将怎样开展工作?
    28、在完成某项工作时,你认为领导要求的方式不是最好的,自己还有更好的方法,你应该怎么做?与上级意见不一是,你将怎么办?
    29、你工作经验欠缺,如何能胜任这项工作?
    30、您在前一家公司的离职原因是什么?
    31、为了做好你工作份外之事,你该怎样获得他人的支持和帮助?
    32、如果你在这次面试中没有被录用,你怎么打算?
    33、谈谈你过去做过的成功案例?(工作中遇到什么问题)
    34、如何安排自己的时间?会不会排斥加班?
    35、这个职务的期许?
    36、什么选择我们这家公司?
    37、谈谈如何适应办公室工作的新环境?
    38、工作中学习到了些什么?
    39、除了本公司外,还应聘了哪些公司?
    40、何时可以到职?
    `

  2. 面试时这样介绍自己的项目经验,成功率能达到98.99%
    https://mp.weixin.qq.com/s/z5xM1HxRhrAqBPJpgIqD5Q
    `
    1、在面试前准备项目描述
    2、准备项目的各种细节
    3、不露痕迹地说出面试官爱听的话
    4、一定要主动,面试官没有义务挖掘你的亮点
    5、面试过程中绝对不要出错(前后矛盾、简历造假、心态浮躁、不稳定 等等)
    6、一点要学会引导面试官

    面试前一定要准备,在讲解项目的过程当中,先讲解项目背景。也就是说为什么要做这个项目,它与公司的业务发展是什么关系?来源于什么诉求?这里如果讲解清楚,不仅能够让面试官容易理解,也很能体现技术视野与业务理解等软实力的。不用把项目当中所有的功能都介绍一遍,完全没有那个必要,迎合面试官的需要,体现自己的特点。
    `

  3. 如何在阿里技术面试中脱颖而出?| 内部资料
    https://mp.weixin.qq.com/s/LAUKwTo4c0pvzSarKFM-rg
    https://mp.weixin.qq.com/s/99H2eavPKQEAiQVXUqNhXg
    `
    招什么样的人?
      技能
      潜力
      软实力
    说了这么多,其实在招人上有一个对比的标杆,就是你招的人是不是比团队中同一等级中50%的同学优秀,如果你觉得没有他们优秀,那不用纠结,这个候选人不要了,团队必须不停加入更好的同学,才能变得更加强大。

    面试的方法
    面试不要做的事
      不要问记忆性的问题、偏门的问题
      不要在面试中试图证明别人不如自己,毫无意义,人无完人,总有覆盖不到的地方,按照这个规则招聘,会错过很多优秀的人才。
    面试应该做的事
      问已经发生的事情
      问题解决思路
      少问多听

    STAR原则

    假的STAR
      描述含糊不清
      只表达态度和看法
      假设式描述
    鉴别方式
      更多的关心What/How/Why
      细节!细节!细节!

    其他Tips
      你在面试别人,别人也在选择你
      为未来招聘而不是现在
      面试是一面镜子

    技术人如何不断成长?
      经验丰富,知识体系完整
      保持良好的习惯,不忘总结和提升
    `

  4. 面试环节——建立面试标准
    https://mp.weixin.qq.com/s/qhfgtyLgXVt5k3Mx8ijQ3w
    `
    今天要说的部分是面试前需要做的,主要有三部分:建立面试标准、挖掘岗位关键信息、面试。
    一、 建立面试标准
    配合业务团队提高招聘质量。
    统一招聘标准。
    提高HR招聘的专业性。

    二、 挖掘岗位关键信息
    招聘原因,这个岗位要解决什么问题?一定要和部门沟通清楚为什么要增加HC或者是突然招人,要这个人来需要解决的问题和负责的事情是那些?
    岗位价值,需要他来之后干嘛?弄清楚为什么要招人之后,就要看看这人来了之后我们希望他的具体产出是什么,在部门、在团队的价值是什么。
    这个岗位的其他属性是什么?需要和什么部门配合沟通?是需要沟通多一些,还是强势的推动能力多一一些?是要和产品多打交道,还是要对外沟通多一些?

    三、 面试
    因为后期还会单独的说一些自己参与面试的经验和技巧以及一些小建议,所以在的面试模块中,主要还是介绍一些面试环节中的关键点。

    # 浏览简历
    1. 看简历上面候选人的基本信息、年龄、学历、专业、过往履历及项目经验
    2. 简历信息与岗位画像的匹配程度,重点匹配点
    3. 判断候选人工作经验、年限、项目经验到什么水平
    4. 根据今几段工作变动的情况推测候选人能力和性格
    5. 发现简历提问点、存疑的地方,做出标注
    6. 问题设计:STAR原则:情境(Situation)、任务(Tasks)、行动(Action)、结果(Result)
    情境:聊一聊令自己印象深刻的一个项目或者是比较难完成的任务(任务,事件,事件,地点,为什么,怎样)
    任务:项目的结果是什么?这个项目和任务的收获是什么?你从中获得了什么经验?
    行动:你做了什么?面试官想要了解的是你做了什么?为什么做?做了哪些准备?有没有替代方案?
    结果:行动的结果是什么?从你的行动中,你得到了什么?有没有完成你的目标?你从中获得了什么经验?

    # 开始面试
    1. 自我介绍:面试开始,面试官介绍自己、职位、待招岗位工作内容。
    2. 通过逐步提问判断候选人和岗位的匹配程度
    3. 预测潜力
    4. 综合判断给出结论

    # 结束面试
    1. 告知面试流程
    2. 告知结果通知时间及通知方式
    3. 礼貌送回
    `

  5. 《你的降落伞是什么颜色》求职面试的16条提示
    https://mp.weixin.qq.com/s/PE0rnmZKOn74UVHEHiWVGA
    `
    1、没有“雇主”这回事儿

    2、面试前,一定要做功课

    3、遵守承诺

    4、面试不过就是一场对话

    5、他们会问的问题和你能问的问题

    6、面试中,遵循50-50原则。 一半时间说另一半时间听

    7、回答问题时,遵循20秒到2分钟原则。 逻辑清晰,把握重点,在短时间把问题说清楚

    8、雇主最关心的是风险。 你要想办法证明自己会怎么把工作做到,更适合这份工作。

    9、细节决定成败
    注意形象、个人习惯、紧张表现、自信、对待他人的态度、你的价值观

    10、不管你找是什么职位,大多数雇主都在乎通用能力

    11、面试时带一些证明,表示你具备某种能力

    12、别在面试时贬低你的前任雇主

    13、雇主不在乎你的过去。他们了解过去,只是为了预测你的未来。

    14、留心面试官的时间框架

    15、结束前通常你要问的五个问题
    在面试结束时,如果你喜欢对方,并感觉对方也可能喜欢你,你才可以问这五个问题:
    A 我能得到这份工作吗?
    B 什么时候能得到最终消息
    C 能问一下最晚何时能得到您的答复吗?
    D 如果因为一些原因没答复我,可以联系您吗?
    E 您觉得其他人会对我的技能和经验感兴趣吗?(第一个问题回答不时,在问)

    16、写感谢信的重要性。
    给当天所有面试你的人写感谢信。问他们是否有名片,没有的话,写下名字和地址(问邮件或微信号,会更快一些)

    在面试时最重要的建议就是找出你能掌握的那部分,即使就2%,然后改变它。
    `

  6. 面试官问现在工资是多少,该怎么回答?
    https://mp.weixin.qq.com/s/RTcCCCzK-08LgG01emUJhg
    `
    # 问现有薪资,并不合理
    “你现在薪水多少”几乎是每个候选人一定会被问到的问题,除非你刚毕业。
    这是常态,却并不合理。

    实际上在美帝,一些地区(如,马萨诸塞州)已经立法:禁止企业在面试时询问候选人的薪水情况。

    招聘所谓的人岗匹配,无非是要知道候选人目标薪资在其预算内,同时他的实力足够担任这个岗位。

    薪资问题上,我建议有实力有经验的职场人尽量避免回答这个问题,这是求职者的底牌。掌握我们的薪资,给了企业巨大的谈判优势。薪水的事情,一旦先开口,很可能就输了。
    换位思考,如果你问上一位同岗位的员工薪水多少,企业会如实告诉你吗?
    所以,无论是与HR接触,还是与猎头接触,尽量先发问,了解目标岗位的薪资范围。

    # 拒绝回答,但要有礼貌
    企业可能会在以下几个时间节点问薪水,我的建议如下:

    情况1:一进公司,前台给了你一张岗位申请表,上面有一栏现在薪资(必填)
    应对方法:不填,如果被要求补填,则回答:现在谈薪资太早。

    情况2:初面被问及薪水(初面时,企业HR占据主导地位,有些HR会直接因为薪资差距筛掉候选人)
    应对方法:我更感兴趣的是这份工作,尤其是工作的挑战性和未来职业发展前途。我目前的期望薪资是XX万。当然具体看岗位情况,年薪不是主要问题

    情况3:终面时或之后被问及薪水(此时候选人更占优势,这个时候我们的实力已经得到了用人主管的认可。HR会尽力支持用人部门,不会因为薪资差距而一票否决我们)
    应对方法:尽量把问现在薪资的问题,转回到期望薪资上。

    情况4:用人经理和你谈
    应对方法:坦诚沟通薪资偏低的原因,强调你的能力优势和稳定性。实际上,大部分管理者都知道,长期在一家公司工作,薪资涨幅就会低于市场中位值。导致薪水和市场水平差距过大。

    情况5:猎头和你谈
    猎头不会强势,人家毕竟是做服务的,但也请尊重猎头,他们的工作或许能成就你。和猎头沟通的要点是守住底线,反问出岗位的薪酬预算范围。
    `

  7. 华为面试改革,我们该怎么跟进?
    http://www.cnblogs.com/chanshuyi/p/opinion_of_hw_interview_reform.html

    任正非签发:《关于公司高端精英类、软件类人才面试方法调整建议》文件
    https://mp.weixin.qq.com/s/_a_xaGwb7qerS6eHcV–Rg
    `
    我们要改变过去大呼隆的招聘方法,真正的专家、主管不上前线,HR看简历面试又不深刻,导致大规模进人、大规模走人。不仅对公司不负责任,而且对员工也不负责任。一个青年的青春是有限的,耽误人家几年,对得起人家吗?

    我们要不断充实队伍,也要选对需要的人,人家也需要选对人生的道路,请各招聘机构适当整风。

    借鉴业界经验,对我司精英类人才招聘面试方法改进建议如下:

    1. 以用促招。改变过去面试考察不足而审批过重的问题,用人部门或上级部门的资深专家以及部门主管必须参与到面试中。

    2. 基于业务战略诉求和候选人拟录用的岗位,以及候选人过往的经历和成就,精心挑选由用人主管、本业务领域及周边领域专家、HR专家组成的4-5人的面试小组,开展全面、深入的面试考察。

    3. 由候选人围绕自己最擅长的领域做一个主题演讲,并阐明自己的优点和优势。

    4. 面试小组围绕候选人演讲内容进行30-45分钟的互动交流,对候选人的专业能力和文化适应性等进行深入考察。

    5. 面试小组集体合议,各自充分发表意见,达成共识。
    `

  8. 我三年开发经验,从字节跳动抖音组离职后,一口气拿到15家公司Offer,薪资再一次直线上涨~
    https://mp.weixin.qq.com/s/oQdmQpO4XXFaJbfjt8GvXQ
    https://blog.csdn.net/a296777513/article/details/90728308
    `
    为什么要跳槽,这个问题一定要思考清楚,因为跳槽的成本其实是挺大的,在一家公司积累的不仅仅是人脉还有对当前行业以及业务的熟悉度,新进入一家公司,一切需要从头再来,需要快速的证明自己,尤其是技术人员,还有就是对新环境和代码的熟悉,这些都是成本,所以在跳槽前,一定要想好,为什么要跳槽。

    对于这个话题,从我自身的角度而言有一些感触,从2018年开始互联网就一直有寒冬的说法,各大互联网开始裁员、缩减HC甚至对码农的年终奖下手(辛辛苦苦一年,就指望年终奖~),当然最近确实环境有一些波动,但是远没有网上传的寒冬已至那么严重。从我的面试结果来看就知道,互联网并不是寒冬,只不过是更加理智,对所有的面试者来说要求的更高,所以我们更加要注重自身能力的培养,这并不是说我们要全身心的投入到刷算法,背理论知识等,我们更加注重自己的理论知识怎样能够为公司、产品带来更大的价值,从软实力方面来说,不仅要把事情做好,更要做好向上管理和向下管理。个人建议:想好为什么要跳槽,无脑跳是最不好的情况,如果一定要跳槽,最好的情况是骑驴找马,不要裸辞,跳槽需谨慎!!跳槽需谨慎!!跳槽需谨慎!!
    `

  9. 搞清楚这3个关键点,干脆利落选Offer
    https://mp.weixin.qq.com/s/mj68XU8NhHVeu6tfQ3T7rw
    `
    复盘发现,其实应届生面对多个Offer,只要搞清楚如下3个关键点,就能很干脆的做出选择:
    1、自己最看重的TOP 3要素
    2、起点
    3、换挡可能性

    一、你最看重的TOP 3要素
    一般来说最看重的因素有 4 个:
    1、离家近
    2、公司平台好
    3、薪水
    4、成长

    公司平台好,需要具体定义,一般从下面4个方面来看:
    1、所处行业如何
    2、公司在行业内地位如何
    3、公司薪酬福利如何
    4、公司员工发展如何
    这样一看,其实第2个要素部分包含了3、4两个要素。

    成长,看三方面:
    1、未来薪水空间
    2、职位晋升空间
    3、个人能力提升空间
    你看重的每个要素都有清晰的定义后,就可以拿它们做标准来筛选Offer了。

    很多应届生对起点重视不够,觉得只要自己能力强、够努力,到哪里都可以成为王者。但实际上,起点不但影响你当下的收入、成长,还严重影响你未来的发展。
    所以我的建议非常直接:重视起点,尽可能选择平台好、薪水高的Offer,不要被创业公司想象空间大、未来可能有配股分红等海市蜃楼般的东西蒙蔽双眼。

    我们个人的职业发展,追求的是一个台阶一个台阶往上走,不断靠近自己的大目标。所以选择Offer,要往前多看几年,不要因为一时的压力而随意迁就,那样会每况愈下。
    `

  10. 技术面试最后反问面试官的话
    https://github.com/yifeikong/reverse-interview-zh
    https://github.com/viraptor/reverse-interview
    `
    下面列表里的问题对于参加技术面试的人来说可能有些用。 列表里的问题并不一定适用于某个特定的职位或者工作类型, 也没有排序 最开始的时候这只是我自己的问题列表, 但是慢慢地添加了一些我觉得可能让我对这家公司亮红牌的问题。 我也注意到被我面试的人提问我的问题太少了, 感觉他们挺浪费机会的。

    如果你问过的问题没有被列出来, 请提交一个 PR。
    `

  11. 超实用技术面试手册,从工作申请、面试考题再到优势谈判,GitHub获30000星
    https://mp.weixin.qq.com/s/RLhOKJPT23HaBhyguDTaLQ
    `
    技术人员求职面试,单刷leetcode上的大厂题库可能还不够。

    简历怎么写才能吸引HR的眼光,可能会被技术老大问到哪些常见问题,拿到Offer之后怎样才能让自己的优势最大化然后优中选优?

    面对这些赤果果的问题,目前就职于Facebook的新加坡小哥Yangshun Tay就整理了一份干货:最全技术人员面试手册。
    `
    大致内容框架:

    如何准备编程面试:
    https://yangshun.github.io/tech-interview-handbook/coding-round-overview

    面试备忘录:(涉及面试前需要准备的问题,收到面试题的考虑方式、编程测试准备流程、面试总结)
    https://yangshun.github.io/tech-interview-handbook/cheatsheet

    各类算法小贴士,以及按主题分类过的最容易考到的问题:
    https://yangshun.github.io/tech-interview-handbook/algorithms/algorithms-introduction

    前端求职面试问题答案:
    https://github.com/yangshun/front-end-interview-handbook

    互联网大厂的面试形式解析:
    https://yangshun.github.io/tech-interview-handbook/company-interview-formats

    科技巨头们的通用常见问题,以及几个大厂的常见通用非技术问题:
    https://yangshun.github.io/tech-interview-handbook/behavioral-questions

    适合在面试结束时问考官的好问题!:
    https://yangshun.github.io/tech-interview-handbook/questions-to-ask

    做简历注意事项,让你的简历更能引起面试官注意:
    https://yangshun.github.io/tech-interview-handbook/resume

    一册在手,面试我有。具体来看,面试的前中后阶段,都有不少此前会被忽略的问题。

  12. 8年技术老兵的面试有感
    https://mp.weixin.qq.com/s/LwfdhLaQxvq20fPJPCrUdw
    `
    先说结论:

    这一轮面试游历得到以下几个深刻教训:
    1.不要去小公司,练手也尽量不要去,锻炼价值真的不大
    2.人和人差距蛮大的,牛逼的人5-8年已经是业界顶级了,绝大部分人5-8年也就是个P6的水平
    3.技术无止境,要一直保持敏感性,且每隔一段时间就要跟市场对标下,定期反思,加速成长

    所以在平时:
    1.还是要深挖业务和对应使用到的技术,通过项目来快速学习专项知识,由点及面的全面发展是最靠谱的成长路径了
    2.放宽视野,紧跟产品决策,到底这个产品是怎么run起来,决策的依据是什么,心里要一直有谱
    3.还是深挖技术,结合1&2,深度和广度都要有
    4.长期有耐心,技术不可能速成,贵在坚持

    在这一行,你想要成功(升级&高薪),你必须要有持续持久的恒心和决心,安心做一个反复练习的苦行僧吧,没有捷径。

    面试的大头在于问你项目,需要你非常详细又不失优雅的讲出来,要涵盖到「在什么背景下,解决什么问题,带来什么收益,你在里面的角色是什么,以及包括技术的技术选型的方式方法、技术难点是什么,设计上有什么亮点,以后的技术规划是什么,更有甚者会问你如何推广(如何给业务部门表述你将带来的收益等等)及需求迭代的过程。基本上项目描述占据50%以上的时间吧(纯粹对我这次面试几家的经验来说,还有20%左右是代码题),从项目延展而来的问题是需要你精心准备和思考,因为很有可能在平时你不太关注整体业务模式或架构,或者架构比较简单,或是对整个数据流转不太注意的,这都需要你准备以及美化(美化不是为了撒谎,而是为了流畅的描述和整理思路,说一千道一万还是要平时时刻注意项目发展和全局)

    你简历上写的那几个项目一定要做好挑选和排序。

    再就是一些乱七八糟的问题了,基本会挑几个你在简历上写的技术栈问,还是那句话,基本上github或是一些汇总资料里面的问题看几遍,80分是没什么问题的。
    `

  13. 从王垠面试阿里的事件看程序员招聘
    https://mp.weixin.qq.com/s/3IZ0QV9_YWUVGqZorlyx-g
    `
    餐饮行业里,有些饭店的服务员应聘是需要试工的。就是让应聘者穿上酒店的工作服,然后在工作繁忙时间,工作一段时间。
    这段时间里,面试官可以观察到他在点菜时会不会与客人互动,上菜过程中的专业程度等。进而判断要不要录入他。
    试工后,基础能回答这人能否胜任当前工作。

    当然,“试工”对于招聘起到效果也取决于面试官。这是另一个问题了。

    而 IT 行业,如果面试官不问个偏门算法,问个万万亿级流量的处理解决方案,似乎显得自己比面试者差。所以,IT 行业有个笑话:面试造火箭,入职拧螺丝。

    我们是不是应该换个方式来招聘程序员?也用“试工”来遴选人才。
    据我所知,ThoughtWorks 很多年前就已经采用“试工”的方式招人了。以下是笔者当时的面试经历:

    一面是与 HR 简单聊聊。
    二面,你必须在规定时间内完成一个家庭作业(需要写代码)。当你把作业交上去,HR 会找到公司内部的程序员帮忙看题(这样有助于缓和HR与程序员的关系,因为HR有求于程序员啊。)。
    三面,他们会邀请你到办公室,然后HR找两个程序员和你结对编程(注意:这里是真实的上机写代码),内容就是在你交的作业的基础上加需求。过程中,他们会观察你,会提问你。

    其实,整个三面的过程,就是试工的过程。虽然不能拿真实代码来改,但是也尽量模拟真实的工作场景:结对编程、别人对你代码的质疑等。

    像 ThoughtWorks 这样试工的,在我们行业里,真的太少了。
    `

    “阿里P10赵海平面试王垠”引发争议,谁是谁非呢?
    https://www.ithome.com/0/464/417.htm

  14. 如何写一份有效的技术简历?
    https://mp.weixin.qq.com/s/Gk19erLsvUskRFublKS8JA
    `
    一、以项目为主体,设计你的简历
    根据一项研究,招聘人员(尤其是大公司的)在2018年仅花费大约7.4秒,分析一份简历。几秒钟的时间,如果找不到感兴趣的点,他就会 Pass 你的简历。
    所以,你动手写简历之前,脑袋里面要有一个观念:简历是用来传递信息的,一定要突出重点内容。不要写得密密麻麻,堆砌各种无关的信息,这样只会埋没你的长处,让招聘人员抓不到重点。

    那么,你应该把什么信息,放到简历上面呢?
    对于开发者来说,你的项目就是你的简历。你需要突出你的项目,和项目涉及的技能,让招聘人员一目了然。 简历的主体,至少一半以上的内容,应该是你做过的项目,或者取得的成就,这是最有证明能力的东西。

    二、针对企业的需要,突出你的技能
    下一个问题是,项目经历应该怎么写,才能一眼打动企业的招聘人员?
    大家要这么想,企业招聘的目的,是找到帮他解决问题的人,或者说,招聘帮他干活的人。如果你让他看到,你可以胜任他的工作,他就会想要你。

    企业也没有把握什么人能胜任,他只能假设,如果你掌握了工作所需要的几种核心技能,就是初步合格的人选。

    所以,企业在简历上寻找的,就是你有没有他需要的那几种技能。这才是招聘人员最关心的信息。 所以,简历应该突出的就是,你拥有企业想要的技能,你的经历证明你可以胜任。

    三、项目的三要素
    事实上,项目信息的写法有一个公式。
    项目 = 产品 + 技术 + 结果

    据说,谷歌要求应聘者描述经历时,每段经历必须提供下面三个信息:
    •做了什么产品
    •用到了什么技术
    •取得了什么结果

    比如,“领导了 X 功能的开发,使其集成到 Y 产品,带来额外的 Z 收入”。

    除了三个基本信息,项目描述还要注意下面几点。
    (1)主要介绍新项目,你过去3年~4年的经历最关键。不要详细描述较旧的项目。
    (2)突出项目规模,比如用户数量、数据有多少 TB、每天的收入金额或交易量。
    (3)最好都用动词开头,这样让人感到简洁有力。为了避免单调,动词也可以适当变化,“开发”、“实现”、“部署”、“完成”这些词都可以换着用。

    四、量化你的项目,给出数字
    最后一点,每个项目的描述都需要量化,最好能给出数字。这能够大大提高简历的可信度和专业性,给招聘人员留下深刻印象。

    五、小结
    应聘 IT 行业,难度其实是不高的。因为整个行业非常缺工程师,尤其是中高级工程师。
    企业自己也知道,不太容易招到水平很高的高级工程师。因为大家都在抢人,遇到合适的人选,出手稍慢,可能就被其他公司截走了。所以,只要你的水平能满足企业的最低要求,他们就愿意招你,至少会给面试机会。
    作为应聘者,你只要能证明自己具有合格的项目开发能力,就肯定可以很轻松地拿到 Offer。因此,你真正要做的是:提高自己的能力,多做项目。然后,按照上面的几点建议,把项目信息忠实地反映在简历上,就一定能够顺利地找到工作。
    `

  15. 软技能培训
    http://blog.sina.com.cn/s/blog_493a84550102z739.html
    `
    即:【学习,阅读,写作,沟通,呈现,时间管理,知识管理】-》【思维+问题】-》【价值创造】

    第一阶段:常见的点层面的软技能培训

    1. 个人知识管理,个人时间管理
    2. PPT制作
    3. 演讲和表达,沟通管理
    4. 阅读和写作能力提升(邮件,学习总结,读书笔记,汇报材料)

    第二阶段:思维和问题分析解决能力提升

    1. 逻辑学和归纳演绎基础
    2. 事物的认知和评价(事物群分析,事物分析)
    3. 问题的分析和解决能力提升(问题定义,问题分析,假设和验证,模式匹配,知识库积累)
    4. 系统化思考
    5. 完整的思维和问题分析案例讲解

    所有第一阶段培训都是为第二阶段问题分析解决能力提升服务。但是第一阶段的前导能力又有重要,否则第二阶段的培训也很难真正开展。以上即是我对软技能方面培训工作计划开展的思考。
    `

  16. 面试 Google, 我失败了 | Google 面经分享
    https://mp.weixin.qq.com/s/OsdTcOANr3vwe-lnidC6tQ
    `
    Google 整体面试流程上基本如下:
    Recruiter Prescreen (招聘人员预筛选) →
    Phone Interview (1~2 sessions) (电话面试) →
    Onsite Interview (4~5 sessions, 1 week to receive feedback) (现场面试) →
    Hiring Committee Review (招聘委员会审查) →
    Offer Review (offer审查) →
    Offer Delivery (Yippee!) (offer发放)

    我一共经历了 1 轮电话面试, 5 轮 onsite, 如果算上前面的HR 的预筛选的话, 就是 7 轮.

    之前校招其实也参加过, 无奈门槛太高, 竞争压力太大, 连面试流程都木有进. 当初校招时直接网上刷题, 这个网站上其实还能看到往年的一些题目情况: Google Code Jam. 基本上分几轮, 每轮 top xx 的选手才有机会进入面试.

    # HR 面试
    对, 第一轮就是 HR 面试, 上面流程中的 “Recruiter Prescreen”, 其实就是一些计算机相关基础的填空题和选择题. 几分钟的时间, 十几道题目. 面试过程中, 不需要给予明确的解释, 知道就是知道, 不知道就不知道. 题目可能会涉及到比如: 快排的时间复杂度是多少? 选择排序是稳定的排序算法吗? 等等之类的.
    这也是我参与的所有面试当中, HR 直接参与的”技术”面的. 我理解就通过这一轮面试可以用比较少的成本把一些不合适的候选人直接排除了. 当然这种方法可能不一定适用于所有公司.

    整体来说, Google 的面试确实很难, 但确实也没我想象中的那么难. 但要求确实是很高的, 基本上一些边界 case 等也都是在考察范围内的. onsite 面试完后, 在第二天, 我就得到结果通知, 面试没通过. 事实来看没通过的结果反馈比通过反馈更快. HR 会反馈你哪里表现得不够好, 然后如果想进 Google, 就加油刷题, 说 1 年后, 可以再次尝试, 保持联系哦.
    `

  17. 面试 100 多位软件工程师后的建议
    https://www.infoq.cn/article/FhreNrIfX5hESrwOqVJ2
    `
    在过去的几年里,我进行了 100 多次软件工程技术面试,尽管每家公司都有自己独特的面试流程,但还是有一些人们容易犯的常见错误。下面是我关于如何避免犯下这些错误的忠告。

    # 优秀的软件工程师
    成功之路和失败之路几乎一样。(The road to success and the road to failure are almost exactly the same.)
    ——科林・雷克斯・戴维斯(Colin R. Davis,英国指挥家)

    # 做足作业
    没有准备的人,就是在准备失败。(By failing to prepare, you are preparing to fail.)
    ——本杰明·富兰克林(Benjamin Franklin,美国政治家及科学家)

    # 要有批判性的意识
    受教育的标志是你可以不接受一种观点,但你能够容纳它。(It is the mark of an educated mind to be able to entertain a thought without accepting it.)
    ——亚里士多德(Aristotle,古希腊大哲学家及科学家、柏拉图的学生、亚历山大大帝的老师)

    # 技术挑战
    理论的正确永远无法用足够的验证性实验来证明,然而理论的错误仅仅需要一个证伪性实验就够了。(No amount of experimentation can ever prove me right; a single experiment can prove me wrong.)
    ——阿尔伯特·爱因斯坦(Albert Einstein,犹太裔理论物理学家,创立了现代物理学的两大支柱之一的相对论。)

    # 不要灰心丧气
    成功就是你比失败多爬起来一次。(Success consists of getting up just one more time than you fall.)
    ——奥立佛・高德史密斯(Oliver Goldsmith,爱尔兰诗人、作家与医生。)

    # 这一切都与激情有关
    你的工作将会占据你人生中的一大部分,同时能够让你真正满意的只有做你认为是好的工作,而且要想做伟大的工作只有你喜欢你所做的工作。如果你还没有找到,继续寻找。不要安定下来。事实上,当你找到你心中就会知道。并且,就像任何好的关系也会随着一年一年地过去而变得越来越好。所以要一直寻找直到你找到。不要安定下来。(Your work is going to fill a large part of your life, and the only way to be truly satisfied is to do what you believe is great work. And the only way to do great work is to love what you do. If you haven’t found it yet, keep looking. Don’t settle. As with all matters of the heart, you’ll know when you find it.)
    ——史蒂夫·乔布斯(Steve Jobs,美国企业家、营销家和发明家,苹果公司的联合创始人之一)

    # 结语
    我一直觉得,作为一名应聘者,压力最大的部分是知道我需要得到这份工作,并证明自己是足够优秀的。而面试官的角色也并非完全没有压力,他们需要确保有充分的理由批准或否决某人,这样做出来的结果经得起审查,就我的情况而言,总是如此,尤其是凭良心。

    大多数面试官都会不得不在某些时候接受面试,所以他们很有可能是有同情心的。我希望我这篇文章能够帮助你从另一个角度看待问题,我真诚希望,我的建议能够帮你谋得你真正想要的工作。
    `
    https://medium.com/swlh/my-advice-after-interviewing-100-software-engineers-e34bc3cbc669

  18. 对于算法工程师职业生涯规划的考虑
    https://www.jiqizhixin.com/articles/2020-09-14
    `
    # 什么叫做优秀的算法工程师
    先扔一个观点。优秀的算法工程师是解决问题的人。

    * 一定的工程能力
    * 良好的业务理解和应用能力
    * 良好的产品sense和业务owner意识
    * 给团队争取利益,而非享受团队的利益

    # 在面临换工作/就业的时候,自己应该依据什么做选择
    1. 认识自己
    2. 选择工作

    首先要牢记的是,选择是自己的事情,别人的建议始终都是建议,要对自己负责任。

    在选择的时候,有以下的依据:

    一、行业>方向>领域>专业
    选择的话,大趋势决定上限、个人努力逼近上限

    二、如何看到机遇和努力呢?
    机遇比努力更重要,但是机遇可遇不可求。可控的只有努力了。

    三、所以一个人在不同的阶段适合的地方是不同的。
    1. 学习阶段:学校/大厂的安稳部门。就是安心学习技术,慢慢上线+成长。缺点:速度比较慢,容易安于现状,把平台/学校的牌子当作是自己的实力

    2. 有一定积累,但是还有待继续提高:去迅速发展的大厂新部门/独角兽,这种地方一般业务在快速扩张,所以有很多地方可以上手自己的模型算法,可以满足实操的需求。但是又比较张弛有度。这种地方一般没有缺点,除非这个部门被砍了,公司倒闭了。(某司的云业务发展很好,但是和公司的大方向战略不一致,后期就砍掉了大笔预算;本来公司好好的,忽然自己的业务因为某些原因忽然没有了)

    3. 积累差不多了,自己也知道怎么在干中学,学着干了:可以去一些迅速扩张的地方。优势是你可以大展拳脚,如果自己的实力足够强,可以快速拉起山头;但是容易疲于业务,得不到积累。

    四、风物长宜放眼量

    五、组织活力。

    # 最后
    如果沟通能力等比较好的,其实建议去业务上的算法团队,而不是中台或者lab部门,这些地方离业务比较远,不利于自身优势的发挥。如果是为了赚钱/打仗,那么最大程度地发挥自己的优势才是我们应该做的。反之才应该去中台/lab。

    算法的本质是在解决问题。知道自己的能力是什么,知道自己想要/擅长解决的问题是什么,match起来。这才是每一个算法从业者应该考虑的问题。

    知道自己什么时候想要什么不是一个平凡的技能。
    `

  19. 面试的艺术 – 如何面试别人
    https://blog.devtang.com/2020/09/24/how-to-interview/
    `
    面试某种程度上是一门艺术,非常不标准化,又非常不确定,每个候选人都是一个独特的个体,需要你调整自己的问题,尽可能准确地判断出候选人的水平,这几乎不可能 100% 做到。

    1. 前言
    2. 如何面试别人
    * 从 JD 开始
    * 承认面试考查的不完美
    * 进行有区分度的考查
    * 用细节和数据来佐证
    * 关注核心基础素质
    * 考查核心专业能力

    3. 标准化和复盘
    4. 小结
    * 面试从梳理 JD 开始,在承认面试不可能完美的前提下:
    * 关注候选人的核心基础能力,通过问细节和数据来获得更详细的信息。
    * 在专业考查上,通过现场和事后的作业,保证专业能力过关。
    * 通过标准化和复盘,总结和迭代自己的面试方法。
    `

  20. 好的自我介绍,面试成功一大半
    https://mp.weixin.qq.com/s/aEOUi3x3uMBqSVQaanxSdQ
    `
    /自我介绍的意义/
    自我介绍的意义其实除了展现你自己之外,还有就是提醒他注意到你的亮点,以及为什么适合这个职位。

    注意以下六个要点:
    1. 时长控制。
    2. 内容构成。
    3. 精简内容。
    4. 量化相关指标。
    5. 注意做好内容承接准备,不要给自己挖坑
    6. 语气不好过于谦虚。

    好了,意义和要点都清楚了,那么具体该怎么准备内容呢?你可以试试「PME」框架。

    「PME」中的三个字母分别表示热情(Passion)、匹配(Match)、出众(Excellence)。思路是,先展现出你对这个行业、这个岗位的「热情」,然后证明你是「匹配」这个岗位的,最后再亮出自己「出众」的地方说明比其他候选人更棒。

    # 体现Passion,你可以从下面三个方向入手:
    你对该领域有深入的体验或研究。比如说你就读的是计算机相关的专业、学习过十几个「某时间」的课程等、看多二十多本XX领域的书。
    你时刻关注该领域动态。比如说你经常浏览XX网站、XX社区,会对各个大厂新出的框架花几天时间去折腾一下。
    你的兴趣爱好相近。比如你平常会写点东西,会把所学到的知识重新整理后发表在自己的博客上。

    # 体现Match,需要从你过去的经历中做两件事情:
    提取:提前研究应聘岗位中的关键词,整理出该岗位的关键工作内容和关键要求。
    匹配:从自己的经历中挑选最匹配的事迹来说,不需要多,一项能力对应一个事迹就够了。

    体现Excellence就是做好一点:用数字量化。比如,你通过引入了某个技术框架,并做了二次改造,使得某个系统的负载上限提高了3倍,资源消耗降低 了50%。
    体现Excellence是最后一部分内容,也是最重要的内容,因为这里说的内容是在表达你比别人牛逼,所以很容易成为面试官接下去发问的点,不过你这也是一个你引导面试导向的一个机会,所以要把握好。
    `

  21. 面试,是长期投资
    https://mp.weixin.qq.com/s/AdLn6wkeXBz9KQNrdA-cXA
    `
    大厂的招人流程相对规范,面试一环接一环,每一环都暗藏机关,看应聘者能不能破解。

    但现实中更多的情况却是,大厂数量少,HC 坑位也少,而你目前也不是大神,去面试的公司也基本都是尚在野蛮生长的小公司。

    我们今天的主角就是他们:那些一心想要成为大神的小兵们,以及野蛮生长的小厂们。

    ==
    作为一个小兵,准备心仪公司的面试,是一件值得长期投资的事。
    打个比方,如果 “小渡” 立志要拿下 FAANG (Facebook,Amazon,Apple,Netflix,Google) 中其中一家的软件开发工程师 Offer。
    虽然目前 “小渡” 还是一个小兵,但他相信:做长期有价值的事情,是自我成长的最好方式。除了个别天生就有神力的大神,其他大神无不是经过长期的刻意练习后,才可以云谈风轻地说:唯手熟尔。

    人,一旦明白自己以后想要什么,就不太会去焦虑当下的处境,不太会患得患失,不太会去 “内卷” 的地方,而是坦然地接受当下的自己,坚持做有价值的事情,慢慢改变。

    话说回来,为了准备 FAANG 的面试,“小渡” 计划用 12 个月的时间来准备。在这 12 个月中,他需要有计划地去完成:

    * 每天开口练习 45 分钟的英语;
    * 按专题(数组、链表、二叉树、字符串、堆、搜索、排序、回溯、DP、图 等)的方式,每天刷 2~3 题 Leetcode 上难度为 Medium 的算法题,同时每周回顾本周刷的题;
    * 每两周分析完一个系统设计类的题目,如:设计一个分布式缓存系统,设计 Feed 流系统,设计 Facebook Messenger,设计 Google Doc 等;
    * 每月参加一次系统设计类的 Mock Interview,尽量在平台上找 FAANG 的前员工来 Mock;
    * 学习分布式相关的知识:如《DDIA》,《Grokking the system design interview》, MIT 6.824 等;
    * 选择一门开发语言,熟悉并深挖这门语言的常见问题,如 Java 的并发编程相关问题;

    上面的每一步都可以再细分,细分到每日可以执行的粒度。

    而在执行过程中,只要是人,就难免会有动摇和彷徨的时候。再美好的事情,也难抵日复一日的平平淡淡。唯一的解药,就是定期回顾自己的目标,知道自己要什么。就这样,日拱一卒,终会跨过楚河汉界。

    最后,如果能拿到理想中的 Offer,那当然就完美了。如果没有,也没关系,因为现在的自己,比起 12 个月前,强了不知道多少倍。

    ==
    对于面试流程不完善,却仍急需人才的小厂,建立一套科学合理面试体系,更是一件值得长期投资的事情。
    一场好的面试,双方充分交流,各有收获,公司的形象得到加分;而一场糟糕的面试,不仅费时费力,而且会极大地伤害公司在业界的口碑,以至于后续要花很大的代价去挽回,甚者再也难以挽回。

    如果没有合理的面试流程,面试任务虽很艰巨,但面试结果却很玄学。招到对的人是小概率事件,而招到错的人却是常有的事情。结果就是:浪费时间和金钱,最后还得花额外的时间和资源继续招聘。

    那么,怎么着手搭建一套合理的面试体系呢?
    拿技术面试来说,要搭建一套有基本 “骨架” 的面试体系,会涉及以下工作:

    1. 成立一个专门面试小组或面试委员会:负责制定招聘标准,审核面试计划,面后决策等;
    2. 明确面试官的注意事项,如:面试基本礼仪,提问方式,时间控制等;
    3. 建立并不断完善面试题库,明确各题考察的知识点;
    4. 根据候选人资历,做面试计划:确定面试轮次,每一轮的面试官,以及每一轮的侧重考查点;
    5. 面试全部结束后,当天或隔天召开录用决策会议:决定是否发 Offer;
    6. 邀请候选人填写面试反馈;
    7. 面试记录存档。

    有了骨架,剩下的就是去完善各种细节,让 “肉” 长出来。
    ==

    罗马不是一天建成的。
    而所有的长期投资,无非就是坚信:坚持做有价值的事情,总有一天会产生 “复利”。而 “复利” 一旦出现,它往往就会呈指数的增长。
    `

  22. 如果你是面试官,你会想出什么题
    https://www.v2ex.com/t/855475
    `
    question:
    让我们为裁员潮多做点准备吧。

    这里不限职位,不限职级,不限特定编程语言。

    现在假如让你当一回面试官,你会想出什么题?

    如果方便的话,可以顺便给出出题的目的跟理由,主要的考察目的。

    answers:
    1. 你为什么对本公司的这个职位感兴趣?
    2. 你有没有用过本公司常用的编程语言?
    3. 你有没有做过什么项目?
    4. 你有没有领导别人的经验?
    5. 为什么你要离开现在的公司?
    6. 在给其他团队成员 reveiw code 时,你觉得最重要的是什么?
    7. 描述一下你写代码的全部过程。
    8. 你做 complex algorithms 的首选语言是什么?
    9. 如何设计一个可以扩大规模的 APP ?
    10. 你做过的最满意、最值得骄傲的项目是什么?
    11. 描述一个你做过的失败的项目。
    12. 你目前所在的公司,有什么吸引你的地方吗?
    13. 描述你理想的公司文化。
    14. 你的同事是怎么描述你的?
    15. mutex 和 semaphore 有什么区别?
    16. 什么是多线程编程?
    17. Local Variable 和 Global Variable 有什么区别?
    18. 哈希表如何工作?
    19. 给出一个真实生活中哈希表的例子,并描述一个哈希表为何是一个糟糕的数据结构选择。
    20. 假设你有一个单线程的 C 标准应用程序,它不断崩溃,但从来不在同一个地方崩溃。你觉得可能导致它崩溃的原因是什么?
    21. queue 和 stack 之间有什么区别?
    22. 什么是 regression test ?
    23. Linked lists (删除重复,反转链表,确定它是否有环)
    24. 时间和空间复杂度分析
    25. Tree:基本构造,遍历和操作算法。知道如何实现平衡二叉树
    26. Stack (用两个栈实现一个队列)
    27. 数组和字符串(反转字符串,permutations )

    作者:硅谷 Laioffer
    ==
    你会翻墙吗。。
    ==
    小公司根本没有选择的权利,因为小公司根本没办法招到优秀的人才。
    ==
    你觉得哪个更重要:更优美的实现,还是更易于变现的应用?
    谈谈你最喜欢的开源项目,它有什么与众不同之处?
    你遇到过技术无法解决的问题吗?
    你觉得技术人员和非技术人员的等级是否有高低?是不是非技术人员不可理喻,或技术人员趾高气扬?作为一名未来的管理人员,你如何调和他们的矛盾?
    ==
    Talk is cheep, show me the code.
    直接让对方提供一段最近写的自认为满意的项目代码,当场 review 。
    ==
    1 正常八股
    2 项目经验:看面试者能否给出他做过的项目架构,根据架构复杂程度判断面试者的项目经验含金量。可以稍微展开对项目架构的讨论,为何用实现 A 而不是实现 B ,有什么考量?你们的架构是如何解决 x 问题的?有何优劣?是否有更优解?看面试者平时有无思考。
    3 场景题:给一个或多个场景问题,看面试者排查思路以及对涉及知识点的掌握,以及该问题如何避免?
    4 试前小作业(不做也没关系,至少做了的更积极):面试通知的时候,给个需求让思考。面试的时候,让讲讲详细实现思路,有代码更好,然后现场修改下需求,看面试者如何应对。
    5 让面试者分享:你有没有什么技术要分享?可以是最近遇到的技术难点、在学习中的技术、有意思的技术,以及获取这些信息的途径。
    ==
    简历上写什么就问什么。
    让他自己挑一两个项目介绍一下,然后尽量往深了去聊。
    最后让候选人补充一下有没有比较擅长但是没聊到的东西。
    算法我一般不会在面试中聊,我的印象中,算法的本质是「解决问题的方法」,所以我只考「解决问题」的能力,而不会去考你背过了多少种「算法」。
    面试首先是发掘亮点,然后观察是否有不可接受的缺点。
    `

回复 abc 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注