三年前端面试经验加感悟

    |     2020年4月24日   |   简历面试, 认知成长   |     0 条评论   |    1036

2019 年年底从工作了两年半的公司离职,半个月看面试题和刷算法,然后开始投。分别投了阿里、百度、快手和字节跳动。阿里一面电话匆匆忙忙把我咔掉;百度、快手、字节都是现场面,三家 offer 全拿到,最终选择了字节跳动。

三家都是三轮技术面加一轮 HR。问的东西很相似,网上都能搜到,一定存在于某篇面试题汇总里——技术就是那个技术,问出花来本质还是原理。详细真题掘金、牛客、知乎随便找都看不完。授人以鱼不如授人以渔,下面不逐条罗列题目,每家只提两句印象深的,再把更值得分享的经验摊开。

一、百度、快手、字节

百度

阿里咔了之后的第一家,年前北京还能现场面。一面基本功,三家中唯一问 CSS 的:面试官从正在做的业务拿一个布局场景让写样式(不是圣杯或双飞翼),考察灵活运用,要稍微动脑。二面一点基础,主要是场景或设计方案;算法是二叉树后序遍历,比较简单。三面经理面,一道场景设计后开始谈人生理想:为什么离职、有什么规划、在前团队做过什么贡献、碰到过什么难题怎么解决、加入百度想做什么。这些问题比技术题难,太抽象又不好一直追问他到底想问什么,只能边答边察言观色,口干舌燥,宁愿多问几个技术问题。

总结:更倾向实际做事能力。恰好工作中碰到过或看过相关文章,基本问题不大。部门是百度 App,算主航道,也挺想去,最后因为一些原因拒了。

快手

一面仍是基础。面试官技术栈 React,我的是 Vue,没有为难,从 Vue 问起:响应式、diff、观察者。因为系统看过 Vue 源码,答完后额外讲了执行流程和相关原理,面试官挺满意。二面问原型链等更抽象的东西;其中一个算法是洗牌算法——有点太独立,不是回溯、动规、分治,无法举一反三:看过那几行闭着眼睛能写,没看过可能想破脑袋。换个角度,运气也是实力的一部分。三面像是前端负责人,和百度三面差不多:先场景设计再问规划。

总结:考察更全面,和三面负责人挺能聊。这是主动投递的最后一家,面完第二天回家过年,等着年后入职,后来还是跳车字节了。

字节跳动

本来没打算投。过年在家时字节 HR 从简历库捞出来打电话,说可以年后视频面。想了下投就投,万一快手出岔子还有后路,结果过了。三面就是现在的 leader,聊完对眼。一年前和半年前投过两次:第一次过了因故没去,第二次没过,这是第三次。已经接了快手电子 offer,反悔不太好,又觉得这就是缘分,晚进不如早进,只好对不住快手。

二、成功面试的几个经验

学历

无论工作几年,HR 或面试官第一眼想看的就是学历——很直观的打分。好学历不一定让你通过面试,但可以让简历通过初筛。很多人空有本事,卡在这一关进不了流程。可以理解:大厂简历太多,不可能给所有人机会。学历是很直观的筛法。

工作经历

学历发生了就没法改。最大作用是过初筛。不够立刻进大厂,可以先进二三线或小型独角兽,老老实实待两年,期间修炼基本功别荒废。两年后标签是:学历不是太好,但工作经历还不错,比较沉得住气。进入流程后就是凭本事。三点注意:

  • 跳板公司不能太小:最起码二三线或独角兽,太小给不了好项目,面试官和 HR 大概率得听说过。
  • 不要频繁跳槽:腾讯跳阿里再跳微软谷歌,半年一跳都没问题;不知名小厂跳不知名小厂,一年一跳都嫌频繁,半年一跳没法看。在小厂想去大厂,先稳住,别把简历搞花了。
  • 不要闷头搬砖:业务代码居多,但不能真局限于搬砖。结构不合理就整舒服;重复步骤就考虑造轮子。面试经常让你给解决方案,考的是实际运用。光搬砖说不出完整方案。原型链、闭包、diff 也都会问,知道是怎么回事但说不明白也不行。

搬砖谁都会,凭什么你能去大厂?没条件创造条件也要上。

个人修炼

公司接连倒闭或领导太差,简历搞花了,也不是无法补救。写博客记录思考和方案,创建或参与开源,把博客和 GitHub 整得有模有样。面试官点进去笑容满面,还愁没有机会?这也有助于场景设计题。

例如:重构百度 App 首页 feed。每条数据按归属(广告、百家号、小视频)功能样式不同,点击可能打开 modal、播小视频或跳转。接到需求你怎么设计?没有明确答案,考知识广度和深度、考虑维度。有的人随便说几句就卡住,有的人能说几个小时。作者可能会从长列表优化、跨域/跨页面通信、配置化、数据预加载和缓存、无缝切换/转场、离线包/SSR 等角度答。没有储备想不到这些。场景设计让面试官全方位认知你,也是你自由发挥的题,大厂一般都会问。

  • 高质量博客:保证原创。全是搬运 API、别人的东西或小白无脑文,还不如没有。
  • 持之以恒:不能三天打鱼。连贯才显得认真,几十篇也比寥寥几篇更能让人了解你。

亮点

很多时候可以一招制胜。前面一篇文章最后已经说过,这里照抄:面试官很喜欢问有哪些亮点,业务或技术都会按你的答案深入。追问亮点的面试官其实比较愿意给你机会——技术范围太广,可能他问的你恰好不熟;你也无法保证每场最佳状态。把选择权交给你。没做过有亮点的事,给你机会也抓不住。

有较高追求,哪怕天天写业务,也要思考:组件能不能换写法,需求能不能简化,webpack 要不要升到最新,这个问题能不能造个轮子一劳永逸。问题再小,解决得多了也是积累:对内有输出贡献,离开也能抓住面试官给你的机会。有时候亮点比背面试题刷算法还好用——题会就是会、不会就是不会;亮点没有标准答案,能说的很多。注意:必须足够亮、足够坚挺,上下游和细枝末节都搞清楚,足以应对展开提问。

相关讨论见 前面一篇文章的最后。

软素质

简历用点心:先找个好点的模板。切忌罗列毫无意义的技术点,jq/vue/vuex/react/redux/http/cdn/vim/git 不是不能写,别占用太多篇幅煞有其事地介绍,一句话完事,突出重点。不要写「精通」——你觉得精通是任意场景熟悉运用,面试官可能觉得你既然精通 js,怎么 Vue 是 Evan You 写的而不是你。重点写项目:用到的技术栈、大概功能、你扮演什么角色,别写得跟文档一样。三年以内最好不要超过两页。博客或 GitHub 有东西再放链接,空壳子别放。个人建议放张照片,给简历明确主语,跟长得好不好看关系不大,除非实在对不住全国观众。

一定要会表现自己。面试官想尽可能了解你,但问题可能就一两句。不能问 1+1 你答 2 就完——合格,但不是最想要的。给出标准答案后主动发散:为什么等于 2,有什么场景,有没有等于 3 的情况。具体如原型链题:做出来之外主动说原理、现场画关系图、应用场景(原型链继承),再往继承延伸。知识点掌握不咋地的人说不出这么多。某一方面突出会触发晕轮效应,像月亮光晕,面试官下意识忽略其它不足。不善于言辞不是让你搞社交,技术方面可以开口多说两句。

第一印象很重要。有的面试官你刚看到就知道过不了,反之亦然。不需要西装革履,也别太懒散,精气神不能弱,不要诚惶诚恐。对面基本是将来同事或 leader,你也不会想招个邋遢、性格太负面的人。自信和狂妄是两回事,自信和谦虚并不冲突。

杠杆 过初筛 过面试
学历 第一眼打分 过了初筛就不决定结果
工作经历 二三线待满两年、别花简历 搬砖搬出方案和亮点
个人输出 博客 / GitHub 有货再放链接 场景题能展开几个小时

三、小结

作为技术人,最重要的是技术能力。刚毕业一腔热血通宵也不嫌累,被社会毒打多了容易疲倦、安于现状,这很危险。技术不进则退。客观困难也在:工作量太大、前端学不完。需要一条可持续发展的路,比如每周仔细研读一篇高质量文章,或定期总结——不要太大压力,但必须保持进步。收藏夹吃灰没用。

链接:https://juejin.im/post/5e6ca27e6fb9a07c8076cea5。参考:面试与进阶指南 

一句话总结:大厂面的是基本功、场景设计和你自己准备的亮点;学历帮你进门,进门之后靠输出、表现和持续学习。

转载请注明来源:三年前端面试经验加感悟
本文链接地址:https://ai.zhousir.top/?p=2915
回复 取消