四年前端裸面,两周拿到美团offer

面经

先分享一波面经吧,我知道你们想听这个。

我三轮面试主要聊的项目,通过项目维度考察的基础面,所以能分享的面试题不多。

  1. 手写Promise.all()
  2. aysnc 和 derfer的区别
  3. http1.1/http2/http3 的区别,keep-alive的作用
  4. http 队头阻塞问题,如何解决
  5. TCP队头阻塞问题,如何解决
  6. TCP三次握手,每一次失败会怎么样
  7. 说下你理解的hook
  8. 从全链路角度分析性能优化

以上提到3,4,8我已经在面试后整理发布了相关技术文章,

透视http协议 - 掘金

面试官问你前端性能优化时,他想问什么? - 掘金

第6,7条相关文章在酝酿中了。

面试过程

面试前

我是被内推的,朋友反馈两年来第一次社会招聘,机会难得。

其实我并没有强烈离职的想法,抱着试一试的心态,简历没改,面经没刷,抱着无所谓的心态就上了。

一面

这是我最近几年感受最好的面试体验之一。

我有注意到JD上标注,有性能优化经验者优先考虑,恰好我正在推动专项优化,于是我在自我介绍中都会强调一下这方面的经验,果不其然,所有人都问了。

我从价值,目标,实施,成果四个方面介绍了我的专项汇报。

讲了大概20分钟,面试官很满意,忍不住说,这是很完整的计划了。

他对我的项目经历表现了极大的兴趣。

接着我们又聊了我做过的项目。

微前端,对比了几个主流框架和原理,和我们的选择。

深入调研了微前端,还是iframe最香 - 掘金

前端脚手架,这个我确实做的很好,我封装过vue+webpack项目模版,vue+vite项目模版,uniapp小程序模版,后台管理系统脚手架。只是稍微讲了一个,就可以和面试官聊很多了。

Vue3项目框架搭建封装,一次学习,终身受益【万字长文,满满干货】 - 掘金

小程序原理,这个我实习阶段就已经在研究了,只是太久不做,忘记了,回答得不好。

微信小程序底层框架实现原理|万字长文 - 掘金

后来,问我写没写过node,我正好缺失这部分经验,也就没问。

因为聊的投机,说完项目已经1小时10分钟了,面试官说,按惯例还得做道题目。

于是让我手写下Promsie.all()

我花了7分钟,写了最简单版本的,于是结束了。

二面

两天后,就是二面。

二面面试官项目问了性能优化相关,他更专注底层。

比如协议层,传输层的一些原理。

http部分答得还行,tcp就知道个握手了。

不过他提的问题,我说没了解,但是可以思考一下。

后来查阅相关问题,思考的内容和正确答案基本一致。

同时,对我项目网络库封装部分,非常感兴趣。

因为他说他以前也做过,但是我迟迟get不到他的点。

交流了几波之后,我终于明白了,他的封装思路和我在上家公司的封装思路是类似的。

恰好,老东家所有的前端代码我都烂熟于心,一下就和面试官对上了。

后面又聊了些,对前端脚手架未来的技术规划。

三面

两天后,就是三面。

三面面试官先询问了我的履历。

问了性能优化相关和脚手架相关,不过关注的问题更加宏观,都是全局视角。

问:前端脚手架的意义?

我说来说去,绕不开降本增效,但是我感受到面试官想听到其他东西。

问:从全链路角度分析下性能,主要问题存在哪个阶段,期望达到什么效果。

我说的有些啰嗦,面试官一直打断我,他喜欢重点或者关键词,我答得不好。

问:说下你对hook的理解?

我从公共和复用的角度回答了下,但是没准备,我感觉能回答得更好,有些遗憾。

最后面试官,说了几句我印象深刻的话

"你对技术是有热情的,也保持了一个不错的学习和输出的习惯,这很好。但是我感觉到你工作初期,缺少一个大的业务对你的挑战,没有一个好的领导对你的培养,做事情的方式有点野。如果能有一个大流量,大业务对你的考验和磨练,你的成长不限于此......"

后续

后续就是hrbp,提交流水,谈薪,发offer,离职申请。

对了,还去了趟以前的公司坐了一会,还了个愿,之前许下要去大厂的愿望,现在终于实现了。

几点感悟

你所做的大部分努力没有想象的那么有用

其实一年半前,我就想去大厂看看,不为别的,就想增加自己身上的标签。

名校毕业,在加个大厂标签,好上加好。

我在之前两篇文章中,也都提到了前端人去大厂的意义,这是我的初心。

有兴趣可以看看。

谈谈干前端四年的几点感受 - 掘金

谈谈干前端三年的几点感受 - 掘金

这一年多,为了这个目标我做了哪些努力呢?

  • 刷算法题,刷了快400道,至今不得其法。
  • 封装个项目模版,有40多个star,连我的同事都不用
  • 写了51篇技术文章,水文和干货参半
  • 报名了山月linux训练营,工程化训练营,webpack训练营,面试训练营,边学边忘。
  • 看完了5本掘金技术小册,水分很大。
  • 组内做了6次技术分享,我估计他们也没仔细听听

这些努力的大部分其实没有立即看到成效,也没有想象的那么有用。

或者说潜移默化的变成了我的一部分。

真正在面试中直接帮助到我的是 写技术博客。

但要是从结果论,我觉得有很多因素决定我拿到offer。

最重要的是环境,是有岗位的空缺,有工作机会。

其实是个人的外在条件,年龄,工作时间,学历,

然后才是个人的内在条件,自己做的努力,跟上面比起来都是微不足道,大部分努力都是无用功。

最后多少沾点运气,就是我们常说的面试的眼缘。

但我仍然劝你做些无用功,但不要报过高的期望,只要你觉得这件事是有价值的。

因为大部分时候我们面临选择时,分不清那是不是机会,还是更差。

很多时候被生活和工作推着向前,没有什么考虑时间。

你没有办法辨别什么是机会,没有人能长一双慧眼,看到机会的来临。你只能做各种各样的准备,往往是准备之后你做了临时性的选择、不知深浅的决定,正是这些准备,让你的各种选择和决定改变了命运。等你若干年回过头看,你才恍然大悟,原来那次抓住的就是机会。

筛选

我工作四年了,换了两家公司,我和遇到的同事都保持了一个还不错的关系。

但是我慢慢感觉,和一些同事的交流对我是一种消耗。

一些人虽然工作经验丰富,技术实力强悍,但是不一定能帮助到你。

我们要多和能帮助到我们的人交流。

比如说,和山月交流了一年,

我印象最深的不是,给webpack提了pr,不是哪个知识点我没听说过。

而是在面试摸底时,他说。

"不要太焦虑,你现在技术,是符合你年限的,你的工资,也是匹配市场对你的定位的。你是可以试试现在的大厂的,我觉得没问题。"

再比如说,我的前领导在年初问我今年如何打算时,提到。

"一定要努力去大厂,现在还能去,再有几年就更难了,我知道你不想加班,那就干一年就走,但你是需要这个履历。"

所有人都知道让我往高处走,但只有他明白我不想太累。

价值

其实这就很明白了,多做有价值的事情,能提升自己价值的事情,要努力增加自己身上的标签。

我们记住一个人,都是记住的这个身上的标签。

我们认识一个人,也是从他身上的标签开始的。

别人想帮助你,也需要你自身有价值。

你想和能帮到你的人多交流,也得认识到自己的身上的价值,要明白自己要什么。

自洽

每个公司都会有它的问题,换份工作也会面临新的问题。

问题只会随着职级工资的升高,越来越多,越来越棘手。

有些人沉醉研究技术,做好自己的事情;

有些人向上管理做得好,在职场风生水起;

有些人工作摆烂,不求进步,无心绩效;

有些人大厂换大厂,一路晋升;

有些人跳槽越跳越难,赋闲在家。

这些人都是对的,最重要的是要自洽,找到一个自己内心能接受的方式。

相关推荐
恋猫de小郭1 小时前
Flutter 3.35 发布,快来看看有什么更新吧
android·前端·flutter
chinahcp20082 小时前
CSS保持元素宽高比,固定元素宽高比
前端·css·html·css3·html5
gnip3 小时前
浏览器跨标签页通信方案详解
前端·javascript
gnip3 小时前
运行时模块批量导入
前端·javascript
hyy27952276844 小时前
企业级WEB应用服务器TOMCAT
java·前端·tomcat
逆风优雅4 小时前
vue实现模拟 ai 对话功能
前端·javascript·html
若梦plus4 小时前
http基于websocket协议通信分析
前端·网络协议
不羁。。4 小时前
【web站点安全开发】任务3:网页开发的骨架HTML与美容术CSS
前端·css·html
这是个栗子4 小时前
【问题解决】Vue调试工具Vue Devtools插件安装后不显示
前端·javascript·vue.js
姑苏洛言5 小时前
待办事项小程序开发
前端·javascript