大厂面试官的独白:如何准备面试

见过不少履历一般的候选人面试很顺利,也见过不少简历背景光鲜的候选人面试评语很差。如果你正在准备面试或未来打算要出去看看,建议你花点时间瞄几眼,说不定会有不一样的收获。

呆过几个互联网大厂,有电商有支付,也包括阿里系,做为面试官经手过的简历有大几百份,也面过上百个候选人,瞎聊几句,主要包括看重什么,怎么准备简历,怎么准备面试内容,怎么和面试官沟通等话题。

1. 看重什么

首先是学习能力(敲黑板划重点)。

因为每个人都是从不会到会。比如我从事支付行业十余年,招的人里面90%都没有做过支付系统,更离谱的是当前团队里主力写代码的那个小伙子以前还是写管理平台出身,在我团队这里第一次碰交易系统代码,连状态机都没有用过,哈哈。嗯,状态机那篇文章现在成了我的专栏《百图解码支付系统设计与实现》的爆款,里面举的例子就是他。有兴趣的同学可以跳转到这篇文章去看看,多少会有点收获:《支付系统的心脏:简洁而精妙的状态机设计与核心代码实现》。

虽然他毕业几年只写过管理平台,连状态机都不知道,也不知道领域驱动怎么落地,但是在我这里,我让他写的是最核心的交易代码,包括领域模型抽象,领域服务,状态机,同步转异步等等,全部由他搞定。为什么?因为他的学习能力足够强,写的前面几个版本都被我提一堆意见打回去重写,但最后产出的代码可以得上是整个大团队的表率。嗯,最起码可以运行好些年不需要大改,哈哈。

这是我为什么首先看重的是学习能力,技术日新月异,只要学习能力强,就足够应对。

其次是表达逻辑清晰。

有些候选人的简历很光鲜,问个问题,经常抓不住重点,明明三、五句话就可以讲清楚的,非得啰哩啰嗦讲一堆。这种候选人我一般也不通过,原因很简单:如果招进来,我后面交代任务或日常项目沟通,会让自己累死。尤其是在中国这么卷的环境下,我也需要ROI。

我当时内推过一个前下属,技术还行,二面过了,评语就写了:技术不错,但表达有点啰嗦。我当时有点私心,就和他说,你后面不要那么啰嗦,要抓住重点,他说好的。结果三面还是挂了,原因还是:啰嗦,抓不住重点。说明一个人要改变啰嗦的习惯也不是一两天的事,需要一点刻意练习。

说到刻意练习,建议表达不好的同学去看看一个什么职场写作训练营的课程,虽然名字叫写作,实际就是表达能力的提升。具体什么平台我就不说了,有兴趣的同学可以私信我,以免有打广告嫌疑。嗯,我自己参加过,还是有用的。

最后是反应敏捷。

诚然,有些候选人的各方面还不错,但是问几个稍微转弯的问题,就回答得不好。这里面有两个原因,一是反应不够敏捷,往往面试答不上,面试完了写面经或复盘时,才恍然大悟:哦,原来那个问题我应该这样回答......。另一个就是见得不够多,所谓见多识广嘛。

那怎么解?除了天生聪慧外,那只能多学习呗,比如你要是面试支付相关的岗位,就多到我的《百图解码支付系统设计与实现》专栏转转,一回生二回熟,没吃过猪肉也见过猪跑了,唉,怎么又打起广告来了。

2. 怎么准备简历

简历这东西很重要,好歹是敲门砖,但也仅仅是敲门砖而已,一旦面试的门打开,能让面试官惊叹:就这水平!还是:哇,这家伙不错!只能靠自身实力说话。

一般来说,刚毕业时看名校更多,毕业几年后一般看是否有中大厂背景比较多。为什么会这样?因为名校和中大厂就像一个筛子,已经过滤掉很多学习能力不行,表达不清晰,反应不敏捷的候选人。

如果已经是名校或都有中大厂背景的同学,对于简历我仍然有几个小小建议供参考:

  1. 重点突出,描述简明扼要。不要让面试官去给你的简历总结重点。
  2. 有数据更好。比如“所负责系统每年处理10亿元的交易”,就比“负责支付系统的建设和维护”强得多。
  3. 不需要在个人技能里用10来行写所谓的“精通技能”。因为刚毕业的,面试官也不信,毕业多年的,面试官也不看那一栏。你用10行来写精通的技能,还不如写一行:“我给XX开源项目提交过XX个功能点并被合并到了主干”。或“我阅读过XX源码,并修改了里面一项XX功能,应用到XX项目,提升了XX能力”。这绝对能让面试官眼前一亮。

即不是名校,也没有中大厂背景的同学怎么办?嗯,大部分人都需要一个事业爬坡期,可以理解。我们就努力提升技能,先搞定小厂,再到中厂,最后到大厂。也可以直接在小厂,然后把小厂直接做成大厂。当初阿里还是小厂时招了不少高中毕业或大专毕业的,这些人后来成了世界名校毕业生的主管。

先放放遥远的梦想,说点实际的。非名校+小厂怎么准备简历,也有几个小建议供参考:

  1. 重点突出,描写简明扼要。这个和上面一样,不要让面试官去给你的简历总结重点。
  2. 重点介绍你在工作中的创新点。你虽然在小厂,但是能力仍然是超群的,而不是按部就班。
  3. 从开源入手。为开源项目提交过代码更好,否则深入研究过XX的源码也是很大的加分项。遥想当年刚毕业准备简历时,读了一本解析linux0.0.x版本源码的书,手撸了部分示例代码,然后在简历上写:手写了一个类linux操作系统。然后面试邀约不错,哈哈。

对了,我就是从非知名的学校,非知名的小厂(简称双非),一路打怪过来的。记得有一天厂里官宣一位全球顶尖科学家入职时,我还和同样是双非的同事开玩笑说:“想不到我们这种水平的人竟然有一天能和全球顶尖科学家成为同事!”

3. 怎么准备面试内容及为什么看重八股文

不说那么多没用的,首先就是把八股文好好准备一下

很简单:能把八股文搞精通的,也是一种本事,说明学习能力还不错。很多人连基础的八股文也搞不懂,甚至都不准备一下,基本上面个几分钟就没兴趣了。

很多人开玩笑说:“面试官提的问题以为是招开航母的,进去后才知道就是一个拧螺丝钉的。”玩笑归玩笑,扒开浮层看本质,八股文也是一种筛选手段而已,筛掉那批不爱学习的候选人。

可能很多人不服气:“老子能力这么强,凭的是本事,是能力,八股文又不能代表我的能力!”。嗯,是的,可能去当个水泥工什么的,的确有几斤力气就能入行,不用看书学习,多摸几年也能成为师傅。

但是,我们是技术工种,大厂的系统承载通常都是极高的并发,所用到的技术很多都是八股文的变种或组合,需要候选人有足够的学习能力。所以呢,很多面试官喜欢用八股文做为筛选手段是有一定的科学依据的,哈哈。

当然,准备八股文也是有技巧的,网上那么多八股文总结,全装进脑子里也不现实。有几条建议:

  1. 和所面试岗位强挂钩。你面JAVA,就忽略掉C#好了。面试普通应用开发,大数据相关的也不用刻意去背。
  2. 日常高频使用的通用知识要强准备。比如数据库,缓存,幂等什么的,和语言无关,日常经常要用。
  3. 要系统地准备。比如MySQL,我觉得“MYSQL实战45讲”就非常好,应对一般开发岗的面试绰绰有余了。如果你非要去搜索几篇什么“看完这一篇,吊打面试官”,“掌握XX,看完这一篇就够了”之类的文章泛泛看完一篇又一篇,我也不能拦着,但投入产出真的不成正比,连环问几层就答不出来了。简而言之,一个专题最少精读一本经典的书或课程

其次,简历上写的东西,一定要反复自问自答。一句话:项目要不就不要写,写上了就一定要精通。你写在简历上的项目,如果一问三不知,那写了干嘛,只能减分。

可以尝试问几个问题:

  1. 哪个项目最能代表我的技术水平?
  2. 这个项目到底解决了什么问题?我能不能用一句话说清楚?
  3. 我对这个项目是否已经了解足够深入?整体的技术架构是怎么样的?我能否画出架构图?我能不能讲清楚里面的关键技术?里面有哪些技术是有创新的?
  4. 我的贡献到底是什么?解决了什么难题?是怎么解决的?当时为什么是我解决的?现在回头想想还有没有更好的方案?

当然你可以继续扩展地问自己,万一你预想的问题被面试官问到了呢?

简而言之,就是通过项目展示我们高超的技术水平

如果你说,我实在找不出项目中有什么亮点,公司这些项目都不能代表我的水平。那么你有开源项目吗?说开源项目也行。如果公司项目不行,开源项目也没有,那么扪心自问:如果你是面试官,你会要你自己不?面试官怎么相信你高超的技术能力和高超的解决问题的能力呢?

4. 怎么和面试官沟通

八股文和项目梳理得差不多,简历也重点突出,拿到了面试机会,就和面试官开聊吧。

总结一句话:投面试官所好。每个面试官都有自己的喜好,有些喜欢聊项目,有些喜欢架构,有些喜欢聊开放性问题,有些喜欢研究源码实现,有些喜欢问算法。你能怎么办?问什么答什么呗,所以才要准备充分哪。

不过通常来说,再重复一次上面“1.看重什么”里面说的还是很有必要的:

  1. 要表现学习能力强。比如看书,看源码,理解原理,收获是什么,如何应用到项目中去。
  2. 理解面试官的问题。不要还没理解问题就随便回答,不理解就问清楚问题好了,更不要问东答西。
  3. 表达逻辑清晰,简明扼要。一句话能说清楚的,绝对不要补充说五句话。

另外,也正因为每个面试官都有自己的喜好,有时候真的不是能力不行,就是和面试官不搭边,也是常见的事,这个时候你就告诉自己:这面试官太差了,我还是换一个吧,不然进去在他下面做事还难受。

5. 结束语

写完一看,竟然啰哩啰嗦写了3000多字,明显违反了“简明扼要”原则,不过我们在瞎扯嘛,就不用管那么多了。大家写简历和面试时,不要像我这样。

嗯,反正已经啰嗦了这么多,你也看到了这里,如果对支付感兴趣,欢迎关注墨哥,让我们一起解构支付系统架构设计与实现,深入了解支付系统的方方面面。另外,我偶尔也写些非支付类的水货文章供大家消遣的哈。

最后的最后,还是希望这篇文章能给你带来一点点的帮助,祝你找到一个心仪的饭碗。

精选

专栏地址百图解码支付系统设计与实现
《百图解码支付系统设计与实现》专栏介绍
《百图解码支付系统设计与实现》专栏大纲及文章链接汇总(进度更新于2023.1.15)
领域相关(部分)
支付行业黑话:支付系统必知术语一网打尽
跟着图走,学支付:在线支付系统设计的图解教程
图解收单平台:打造商户收款的高效之道
图解结算平台:准确高效给商户结款
图解收银台:支付系统承上启下的关键应用
图解支付引擎:资产流动的枢纽
图解渠道网关:不只是对接渠道的接口(一)

技术专题(部分)
交易流水号的艺术:掌握支付系统的业务ID生成指南
揭密支付安全:为什么你的交易无法被篡改
金融密语:揭秘支付系统的加解密艺术
支付系统日志设计完全指南:构建高效监控和问题排查体系的关键基石
避免重复扣款:分布式支付系统的幂等性原理与实践
支付系统的心脏:简洁而精妙的状态机设计与核心代码实现
精确掌控并发:固定时间窗口算法在分布式环境下并发流量控制的设计与实现
精确掌控并发:滑动时间窗口算法在分布式环境下并发流量控制的设计与实现

你可能感兴趣的:(职场加速器,面试,职场和发展,面试准备,职场,互联网,面经)