面试丨求职时这样回答问题你就输了!来自IT面试官视角的深度解读

本文将从面试完整流程、简历书写与优化、面试问答到最终选定offer的全过程,展开360°全方位详细的指导说明,希望对求职路上困惑迷茫着的小伙伴们有所裨益。

一、面试完整流程一览

根据本人多年面试程序员的经验来看,技术人员的面试流程一般分为这么几步:

简历投递

人事筛选简历

技术小组筛选简历

技术面试 2~5 轮

人力/综合面试

当前轮次通过,进入下一轮候选人清单

二、如何翻倍自己的面试机会

1.拿到面试机会的几个重要前提

有相应的岗位;

符合投递条件(学历、工作年限);

有多个投递渠道(招聘网站、猎头、内推、技术群);

简历符合要求且有亮点;

才华横溢且名声在外;

2.扩展投递渠道

现有的投递渠道:招聘网站、公司官网

可以扩展的投递渠道:猎头、内推

独特的方式:优秀的作品(软件产品、开源项目、文章、出版物)、实习

其中,可以合理运用几种成功率较高的方式:

优秀的作品

内推(论坛、技术社区、交流群)

猎头(仅限于高端人才)

实习

3.如何编写或者优化自己的简历

我们来看下,在写简历时,经常会遇到哪些令人头疼的问题:

没有实践经验(应届生)

不确定哪些信息该写哪些不该写

不知道如何在简历上展现自己的优势

不知道如何编写项目经验一栏

为了高大上写上了自己不熟悉的技术名词

三、简历编写与优化

我们以一位大数据开发工程师的求职者简历,来具体看下优化前后的对比:

优化前:

体现的问题:

简历很简短,没有具体事项;

照片应当用个人纯背景证件照;

个人信息有遗漏项且有不必要项;

遗漏项:求职意向、个人状态、工作年限;

不必要:政治面貌、出生年月、民族、地址;

工作经验的描述太短、太宽泛;

自我评价并没有什么意义;

教育背景太细,很多无意义的信息;

没有就职的岗位信息;

工作经验没有具体量化的数据体现;

 

简历编写原则

写别人关注的信息;

照片应当用个人纯背景证件照;

工作经验要用数字量化体现;

工作经验描述要具体;

名校毕业,校名靠前放,反之靠后;

有价值的项目或者奖项靠前放;

博文和开源仓库靠前放;

简历不止给人力资源看,还给技术看;

优化后:

四、如何为自己的面试做准备?

1.我应该看哪些资料?

根据领域必备知识

根据招聘要求

计算机基础知识

别人的面试经验

下面以【爬虫工程师】这个岗位为例,详细说明一下面试时可能问到的问题。

编程语言的熟悉度:你说说 Python 的垃圾回收机制、装饰器

算法和数据结构:请你写出链表反转、请你写出归并排序

计算机基础知识: HTTP KeepAlive 代表什么

计算机基础知识:描述一下 TCP 握手过程

工作经验和知识覆盖面:假如有数据丢失,你应该如何排查

岗位特定要求:根据条件设计一款分布式应用,你会怎么设计

岗位特定要求:APP 逆向当中遇到自定义协议应该如何处理

岗位特定要求:说说你会的几种 hook 技术

简历上提到的:我看你提到你监控过请求信息,监控的目的是什么

连环炮问题示例:监控具体怎么实施?怎么知道监控哪些项?

连环炮问题示例:为什么监控的是请求数,但耗时却不监控?

连环炮问题示例:监控到的数据一般哪些部门会用?怎么用?

连环炮问题示例:你选择哪款监控软件?为什么不选其他的?

通过阅读别人的面试经验可以推测这个岗位的面试难度、面试节奏、面试偏好和关注点,进而补充自己的知识。

2.我该为交流做哪些准备?

一段约 100 字的开局介绍和一段约 100 字的离职原因;

面对人力资源:几个关于岗位和公司整体情况的问题;

面对技术:几个关于工作氛围、加班情况、团队组成的问题。

 

五、我与面试官的正面交锋

1.如何面对面试官的连环问题?

连环问题是一定会有的;

在准备阶段假设几种连环问题,通过问题反推自己要突击的知识;

不熟悉的知识尽量不要写在简历上,例如分布式;

不会的问题可以说“这个我也没有深入去了解过”,但如果你有其他思路,你可以提出来“但我觉得可以这样”;

如果答不上,赶紧用笔记下来。

Q—面试官提问丨NA-不恰当的回答丨OA-恰当的回答

Q:我看你在简历里写用过消息队列设计分布式爬虫?NA:对

OA:对的,之前有考虑过用Redis,后来经过小组评估,改成了消息队列;

Q:为什么不用Redis?你们评估的时候主要考虑哪些因素?NA:我也不太清楚,领导说选这个;

OA:这是我们的业务特性决定的,我们需要将同一份数据给多个下游使用,例如编辑组、数据分析组、深度学习组,消息队列的Work模式很适合这样的场景,而Redis要满足需求就很麻烦;

Q:消息队列数据丢失的问题你们怎么处理的?

NA:我记得消息队列都有重传机制,那个就能解决;

DA:一般会在几个地方丢数据,例如消息生产时、消息存储时、消息消费时,消息生产时的丢失可以借助重传手段解决、消息存储时的丢失可以借助消息队列提供的多点同步策略解决、消息消费时的丢失可以在消费成功后手动确认,改掉默认的自动确认;

Q:消息队列多点同步策略有哪些?是怎么样的过程?NA:有All, Once之类的具体过程不知道;

DA:消息队列提供的多点同步策略一般有All. Once之类的,另外还有两个忘记了,同步过程我也没有深入去了解过,但我觉得比较稳妥应该是借用分布式领域的“大多数”原则来确保消息存储到集群中,然后由内置的同步算法同步到全部节点

Q:消息队列的去重应该怎么做?

NA:呃,通过Redis这些软件进行去重,然后只要经过Redis的都是不重复的; (牵强地联想)OA:这个我没有接触过,不知道怎么回答. (用笔记下来)

2.反问时刻,展现你的才智

什么不该问?

和公司或者工作无关的问题,例如“听说上次公司出了个漏洞,影响很大啊!

让别人很难回答的问题,例如“哎,我看新闻说副总裁有花边新闻,这是什么情况?”

难度较高的技术问题,例如“我上次看一篇论文,说可以用深度学习辅助文本的提取,你有研究吗? ”人事变动问题,例如“我听你们公司同事说大领导准备换,你知道会换谁吗?”

该问什么?

和工作相关的问题,例如“这边在取得数据后是不是还要做一些预处理才会交给下游?”

技术相关的问题,例如“你们用Logstash同步数据,有没有尝试过Filebeat?如果好用的话可以切换吗? ”行政相关的问题,例如“能说一下加班情况吗?弹性上下班还是固定时间打卡?”

你的连环问题?

当时他问你,但你答不上的问题,顺着这个话题横向或者纵向延伸,例如“消息队列的去重该怎么做? 、“一般是选择RabbitMQ还是Kafka呢? ",但要注意,最多连环3个;

六、人事手上那张神秘清单写了啥?

说说你近五年的工作规划?

你结婚了吗?家人跟你一起在这边还是?

你上一份工作为什么离职?

如果这边的工资比你上一份少一些,你能接受吗?

如果面试通过,你大概多久能到岗?

前面四个问题都是旁敲侧击的试探你的稳定性;后面一个问题可能是常规问题,也可能是有分数相当的候选人。

决定你能否进入下一轮的评分表

评分表是为了量化面试结果,为后续的筛选提供决策基础;

评分表是为了更好地观察应聘者的属性;

评分表是面试生命周期的物理体现;

每个面试官负责填写对应自己的一部分;

七、如何选择心仪的 Offer

看谁给到手的现金最多?

看谁给的现金+股票更有竞争力?

看工作环境和研究方向?

其实这一切啊,都源于你自身的一个实力!实力足够,影响力足够,高薪挖人甚至不在少数!

另外本人是一名CC++的程序员,如果你想更好的提升你的编程能力,好好学习C/C++编程知识的话!那么你很幸运~

C语言C++编程学习交流圈子,Q群1030652847点击进入】微信公众号:C语言编程学习基地

分享(源码、项目实战视频、项目笔记,基础入门教程)

欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!

编程学习书籍:

编程学习视频: