我在 7 周内一共面试了 42 场,最终拿了微软、蚂蚁、B站、字节、Conviva 的 5 个 Offer。上图是我的面试时间表
我有些东西希望能够分享给大家,不仅仅是简单的面经,包括:
什么?你问我为什么面了这么多大厂却不面百度?
因为我就是百度的
一个最重要的问题:
你想找一家什么样的公司?
你需要知道你的目标是什么,是 WLB(Work Life Balance),成长,还是赚钱?
类型名称 | 描述 | 该类型的公司 |
---|---|---|
WLB 型 | WLB = Work Life Balance,即工作生活平衡,955的这种公司 | 常见于外企,国内互联网公司也有一些,可参考 Github/955.WLB。部分互联网大厂的成熟事业部(比如百度的搜索事业部)也比较 WLB |
跟随成长型 | 工作强度可能不轻松。但是可以跟随公司快速成长,在公司内能学到很多 | 互联网大厂基本都满足这个要求,阿里我觉得是做的最好的。某些技术驱动的小公司也可 |
钱多型 | 钱给的很多 | 多为业务爬升期的公司(拼多多、字节),或在风口创业公司(作业帮、跟谁学) |
据我所见很少有哪家公司同时满足上边 3 个特点,大多企业满足 2 个就已经非常不错了
你需要知道上边 3 点哪个对你最重要,排个序,然后根据这些特点来初步锁定你的目标公司
其中我要单独说下外企和阿里:
网上有太多太多关于简历的文章了,这里我不想赘述如何写简历。我反而想 diss 一下:
简历真有那么重要吗?
我发现其实好像没那么重要,因为面试官根本不怎么看你的简历。这是我观察到的一个非常有趣的小细节
为什么这么说呢?事情是这样的
我的简历里面第一页里有一个非常漂亮的时间轴,是我用 Short Night 画的。这是一个我的开源项目,它在简历里大概这样:
因此,我当然会在面试中的开场自我介绍里面提上一嘴,然后 70% 的面试官都会有如下反应:
我:blablabla...不知道您有没有看到我简历第一页里面的那个时间轴,这个是我一个叫做 Short Night 的开源项目画的,它有诸多优点blablabla...
(面试官突然面无表情盯着屏幕)
(过了30s,面试官缓缓看向左下角,我简历里时间轴的位置)
(点点头)
这说明什么?说明面试官根本就没怎么看过我的简历!
当然,diss 归 diss,简历还是很重要的。下面是简历的一些重要作用
有些面试官会仔细阅读你的简历,然后在你面试前,你其实就已经凭借你优秀的简历面试通过了。或是免掉写题,免掉技术问题,直接简单聊一聊项目和做事风格,也都是有可能的
我曾经面的一家公司,整场下来没有写题,也几乎没有技术问题。所以在我最后一面的回问环节的时候,我问到:
我:为什么我整场下来都没有写代码?这种面试风格会不会导致面进来一些很会扯皮但是不会写代码的人来?
面试官:哦是这样的,我们已经看了你的简历和开源项目,觉得没必要再面技术相关的了,因此就是简单和你聊聊天,看看你人怎么样
HR和猎头(后面会单独讲这个角色)会非常看重简历。糟糕的简历可能会导致你连面的机会都没有
如果你本身是大厂员工,HR和猎头基本上不会拒绝你。但是如果你不是在一座明星大厂,那么还是好好写简历吧
基本上所有的面试官都会和候选人聊项目,而聊得项目来源无非有2个:
不仅仅是项目,如果你在简历里面写一些技术关键字,那么面试官也会倾向于考察你这些知识点
比如简历里写个“Git”,那么遇到 Git 很熟的面试官看到了可能就会问“git rebase 和 merge 有啥区别”,要是答不上来就尴尬了。因此:
自己不熟或是不重要的东西最好别往简历上写!
想要开始面试,有这么几个渠道:
渠道 | 推荐指数 | 邀约方式 |
---|---|---|
猎头 | ⭐️⭐️⭐️ | 在 LinkedIn、脉脉等招聘网站中,填好资料并修改状态为【在找工作】,就会收到源源不断的消息 |
直接与HR或工程师对接 | ⭐️⭐️⭐️⭐️⭐️ | 同上 |
熟人内推 | ⭐️⭐️⭐️ | 找熟人走内部推荐。内部推荐通常是可以跨部门的,比如百度员工可以内推朋友到百度的任意一个部门 |
主动投递 | ⭐️ | 通过企业自己的招聘官网,或通用招聘网站(如脉脉、boss直聘)投递简历 |
下边分开讲讲这几个渠道
某些招聘公司会雇佣猎头公司来帮助自己招聘。由猎头进行初步筛选,推荐高质量候选人到公司面试。如果入职成功,招聘公司需要支付一笔非常可观的数字(候选人年薪30%左右)给猎头公司
猎头推荐的岗位有如下特点:
主要原因是——请猎头比较贵
因此,如果不是处于扩张阶段特别缺人(如拼多多,字节)的公司,或者无能力独立招聘的公司(如一些小外企,创业型公司),那些业务趋于稳定且有能力独立招聘的公司基本上不会请猎头。据我所知微软、网易、百度是没有请猎头的
通过猎头推荐的有以下好处:
公司HR,和部分公司的工程师也会积极招人(点名字节、阿里)。这个是我认为最好的邀约渠道,推荐有些与这种类型的人联系,原因如下:
而如何接触到他们呢?大概有这么几个方法:
特指通过联系自己朋友走内部推荐,然后进入招聘流程。比如百度员工可以内推朋友到百度的任意一个部门
但是这个非常考验内推人水平,他需要与你沟通岗位,推进进度。他毕竟很难知道哪个 Team 是不是真的有 Head Count(俗称HC,即有多少个招聘名额),所以实际上是略逊色于直接与HR对接的。因此,建议内推完成后最后让他把对方HR的联系方式给你,后续自己直接和HR对接
另外,内推成功入职,内推人会有一笔还不错的奖金(通常大几千块),与职称定级有关
最糟糕的邀约方式,没有之一。一旦你主动投递了,基本上意味着:
我通过主动投递的方式,就没收到过一次回信。不要主动投递!!!
一般来说面试无非包含下边几个内容:
我理解面试是挖掘候选人优点的过程。因此建议,如果自己某方面不行就大胆承认,然后引导面试官朝自己擅长的地方引导。比如面试过程中面试官经常问我一个什么 2d css 布局方式有了解过吗,我都是直接回答“我 CSS 写的非常少,仅限于会用,我 js 很熟,我们可以聊聊 js 相关的”
总之,术业有专攻,及时止损,想办法帮助面试官挖掘自己的闪光点才是最重要的。其中一个比较好的方法是——留伏笔,比如:
当然,面试官可能会不理你的伏笔,那么怎么办呢?
——多留几个
这个其实是最简单的,没太多的额外发挥空间。不同公司要求的算法不太一样,按照 LeetCode 的标准大概可以分成:
级别 | 标准 | 外企大厂(微软谷歌等) | 外企小厂 | 字节跳动 | 国内大厂或独角兽 |
---|---|---|---|---|---|
T0 | 30分内做出Hard | ✔️ | ✔️ | ✔️ | ✔️ |
T1 | 20分内做出Medium | ❌ | ✔️ | ✔️ | ✔️ |
T2 | 10分内做出Easy | ❌ | ❌ | ❌ | ✔️ |
你可以登陆 leetcode.com
去做几道题,算好时间,看看自己的算法水平在什么程度
如果你打算面外企,最好去英文版的 Leetcode,并将理解题目的时间也算作总耗时中
这里有个小技巧。如果你是和我一样的那种“面试时特别特别紧张,写题完全调不通”的人,最好在写题前就和面试官说好,写完大致思路后不要浪费时间调代码。当然,这个显然是一个扣分项,如果你不紧张,最好还是调通比较好
回答问题时,尽可能的多秀肌肉
比如问你微任务宏任务,你一方面要精准的回答上来,另一方面要再掰扯掰扯时间循环的各个阶段,规范定义。问你箭头函数this,你就答所有箭头函数完整规范,再掰扯掰扯作用域链,和JS引擎实现
总之,如果正确答上来10个题,你可能得100分。但是如果你答上来并说透10个题,你可能就得了1000分。如果你的回答完全超出了面试官的储备边界,那么面试官基本上会迅速终止技术问答阶段,并给你个满分
以阿里为代表的这种很虚的公司(非贬义,指更看重软实力)特别喜欢聊项目,我面了阿里10面,就做了一道题和三道技术问答
下面我详细介绍下如何聊项目
聊项目从你开场的自我介绍就开始了。你要在自我介绍中,挑选出1-2个最具有代表性的项目来简单介绍,并留好伏笔
下面是开场自我介绍中,介绍项目的一个大纲:
你需要对于自己的项目预先整理一份脑图
这点非常重要。面试过程中光是组织言语就已经很废脑子了,如果还需要回忆几年前的项目并整理思路,那简直是噩梦。因此,预先整理你项目的大纲是一个非常重要的点
比如下图是我对于我的个人开源项目 Short Night 的整理:
上图可以大致保证,面试官问到任何有关 Short Night 项目的问题,我都可以迅速定位到某一个模块,然后有条不紊的解释
其实这个精细程度还是不太够的。上图只是我的个人开源项目之一,并非是我的关键项目。我的关键项目整理的要更为复杂,内容更为多一些
展现人格魅力的时候到了,这里你只需要将自己最好的一面展示给面试官即可
有一个需要提前准备的点,那么就是:
我不建议大家为了通过面试而说假话,这样对双方都不好。但是实在是有些面试官很极端,那么你也可以顺着对方说,拿下 Offer 作为你后续的谈资。比如:
建议大家先说真话,这样可以找到适合自己的岗位,同时你认可的事情也可以被公司所认可。但是如果你说真话后,面试官反应强烈,那么可以尝试顺着面试官说,来想办法拿下 Offer。比如:
候选人:我希望有些业余时间可以钻研下JS底层,将来希望加入 TC39 委员会,因此希望 Work Life Banlance 一点
面试官:加入TC39也没什么用,他不能给你带来什么,对业务也没有什么用,离我们太远。我是问你职业生涯的职业规划是什么样的
(此面试官是一个极端业务型的面试官)
候选人:哦哦,技术当然是为业务服务的。因此我是想看看有没有从技术的角度,反过头驱动业务,看看能不能带来什么行业变革
如果已经拿到了很多 Offer,那么如何挑选它们呢?我认为除了各种待遇和物理条件,还有如下几点需要特别注意:
我非常非常建议你拿到 Offer 后,和HR要求再和未来的【直接汇报人】聊一聊。请他介绍下现在业务情况、未来规划、用人和晋升评定原则等等。最好在实地碰一下,让他带你参观参观公司环境
毕竟接下来几年时间里,你的工作都需要向他汇报,现在是你们关系最轻松最容易了解彼此的时刻
面试挂掉有这么几种可能:
这里是【花生派】,一只喜欢写东西的程序员
我在这次换工作面试时,面的第一场是一家小公司,我挂的很惨——由于我面试时实在是太紧张了,完全没办法展现自己
于是我痛定思痛,总结了一套方法论——就是这篇文章
你会发现这篇文章并不是“在想方设法通过种种手段帮助你获得 Offer”,而是在“帮助你如何找到一份好工作”。我只是想分享如何选择、如何更好的展现真实的自己、以及碰到极端情况如何处理
而最终这套方法论,也帮助我从【小公司一面就挂】到现在【六面微软获 Offer】的程度,我也希望它也能帮到你
祝你能找到一份适合自己的好工作~!
这里是【花生派】,一只喜欢写东西的程序员。我常常在黑夜中注视着自己的瞳孔,与自己独处,写下一段又一段的文字
如果你对我感兴趣,可以在这里找到我:
pea3nut.info
pea3nut.blog
我渴求有形形色色的人来与我交换想法
转载时请删除此节
本文可随意转载,转载时需满足以下要求:
http://pea3nut.blog/e1296
pea3nut#qq.com
均可,能让我知道就ok。不用等我回复,打完招呼后直接转就行
liu 2021年4月13日 上午9:30
前端宇宙申请转载
tcg 2021年3月21日 下午10:51
请教下微软前端题目都问些啥呢
lpyexplore 2021年2月23日 下午7:53
公众号 前端印象 想要转载这篇文章
超人 2021年2月22日 下午4:07
公众号 Vue中文社区 想要转载这篇文章,谢谢!
小丧尸 2021年2月21日 下午8:23
所以最后选了什么呀
b-z 2021年2月24日 上午11:19
去了字节
ssh 2021年2月20日 下午4:27
前端从进阶到入院想要转载这篇文章,谢谢!
小炼 2021年2月20日 上午11:44
前端试炼 公众号申请转载,注明作者和来源