面试大厂的避坑指南,你还在盲目刷题吗?(附学习路线)

你以为走的是捷径,其实走的是弯路

备战大厂8个月,将自己完整的心路历程、思考与收获记录下来
希望对和我有相似经历的人,能起到一点点的借鉴;对像我一样迷茫的朋友,有一点点的启发

面试情况

  • 字节2次,一面挂
  • 阿里3次,1次一面挂,2次是hr面挂
  • 美团1次,hr面挂
  • 京东1次:拿offer,但裁员影响停止了招聘

面的岗位都是技术砖家岗,说技术砖家并不是为了凸显自己的技术怎么样

是因为大厂有隐形的年龄限制,30岁再去面普通开发岗,可能面试的机会都不会给,认为此人“成长性不足”

投过的大厂还有:腾讯、蚂蚁、拼多多、B站 ,未收到过面试

不同年限的不同要求

黄金期: 1-3年
青铜期: 5年以上

注:这里年限指的是毕业年限,比如一个人前端干了2年,但毕业5年,大概率只能去面砖家岗了

权重比

1-3年: 70%的基础知识+30%的项目经验

5年左右: 20%基础知识+80%的项目经验

我身边所有进大厂的朋友,几乎都是3年内进大的大厂,超过3年难度不知道要翻多少倍

前3年容易进大厂,还有一个非常重要的原因,就是高学历

5年左右,学历也很重要,但比重在下降,更看重的是你的项目经验,解决问题的能力

所以前3年的黄金期,一定要把握住,切不可 亡羊补牢 为时已晚

抱歉,没有捷径

我以为找到了捷径,其实是一个“死胡同”

拒绝盲目刷题

我曾经以为多刷一些面试题,多看一些别人的面试文章,就找到了成功的捷径。其实这是非常错误的想法,白白浪费了大把时间

刷题得到的是问题的表,得不到问题的里

缺失了自我学习能力,缺少对问题的探究与分析能力

盲目刷题,面试时,也根本架不住面试官刨根问底的问
面试官问一个问题,大概率会引出更多的问题,想了解你的深度或广度

说一个我遇到的尴尬情况:

  • 面试官: 从输入url到页面加载发生了什么?
  • 我:
    1)浏览器查找当前URL是否存在缓存,并比较缓存是否过期
    2)DNS解析URL对应的IP
    3)根据IP建立TCP连接
    4)5) ……
  • 面试官接着问:缓存有哪些?协商缓存请求的流程? 如何利用缓存? 缓存的请求头有哪些标识? etag比last-modified哪个优先级更高? 当同时存在Expires 和 max-age时,哪个优先级高?

第一问我很流畅就回答上来了,第二问就卡壳了
面试官说的很直接:看来这个问题你刷过了,也只是刷过而已……

更要拒绝PUA、拒绝各种所谓的面试宝典,打开宝典水印都是某某教育

拒绝盲目加群

我曾经有一段时间,疯狂加群,各种打听有没有备战大厂的大佬,希望大佬带带我

其实也是找捷径的想法,结果自然是没有

学习是长期的事情,别人在关键时刻给你指导就已经非常不错了

项目经验

为什么5年左右,项目经验要占到80%的比重?

因为面试官需要从项目经验中看到你的优势

如果学历、能力、经验都一般,也没有发表有质量的文章或做过开源项目时,你做过的项目可能就是最能如何挖掘你优势的地方

小伙伴:我做的项目都很普通,没啥亮点可以挖的

确实,大多数项目都是这样,但平常的项目里也有很多可以挖掘的地方

以下几个问题和你探讨一下

  • 你对做的项目架构非常了解吗,其中的技术难点你都吃透了吗?
  • 项目用到了哪些插件,这些插件的作用是什么?
  • 你了解你的页面性能吗?如果让你优化它,你觉得有哪些方面可以去优化的
  • 项目打包后的体积有多少?如何让体积变的更小,如何让页面加载的更快?
  • 你看过项目里其他人的代码吗?他们有哪些难点或写的好的地方
  • 如果觉得你的项目没有难点,让你做项目的负责人,你能做的更好吗?

世界上最好的项目,就是现在在做的项目

建议简历第一条,就写个人优势,这是面试官最想看到,也是最能吸引眼球的东西

写技能? 我会vue、会react、会webpack
写做过多少个项目? pc、h5、小程序、跨端的混合开发都做过
抱歉,这些大家都会……

系统性学习

在这里插入图片描述

特别是对转行做前端的朋友,可以解决大片的知识盲区

  • 可以同时满足知识深度与广度的要求
  • 钻研能力,是从深挖一个个小的知识点积累起来的
  • 学以致用,提高解决实际问题的能力
  • 做好笔记,自己总结的才是最好的

个人的学习路线

内容时间
前端知识体系前后花了3个月,读了超过300篇文章
练习手写js半个月时间
算法2个月时间

前端知识体系

2021年前端面试必读文章【超三百篇文章/赠复习导图】
写给初中级前端的高级进阶指南

练习手写js

一个合格的中级前端工程师需要掌握的 28 个 JavaScript 技巧
最全的手写JS面试题

算法必不可少

算法题 95% 的算法都是基于这 6 种算法思想
前端该如何准备数据结构和算法?
目前我看到的最系统的算法题库

算法是我最痛苦,也是最纠结的地方。花费事件长,效果还很差
但是在两个月的算法练习中,我第一次体会到:编程不仅仅是技术,还是艺术

通过系统性的学习,到最后会发现那些大厂的面试题,你整理的笔记上几乎都有(这是我写了5w字笔记后最大的感触)

借助外力克服惰性

物理惰性是指:人体由静止到运动必须克服惯性

为什么要借助外力?

说说我的经历,刚开始备战大厂的时候,我老想着找个备战大厂的群,找几个大佬带带我
结果自然是找不到。最后没办法,硬着头皮自己建了群,当了群主……

不出意外的话,意外很快就来了,很快这个群就变成了聊天群,再然后就死掉了

有心栽花花不发 无心插柳柳成荫

但是这个群却意外成为了我的外力,每每学不动的时候,就打开这个群看几眼,咬咬牙,继续造

如果自己都不做到,又怎么要求别人做到

2020年12月10日到 2021年4月, 群只存活了5个月

特别是刚起步的时候,一定要找到自己的外力,逼自己坚持下去

  • 比如建一个学历群,成为这个群主
  • 比如成为一个项目或小团队的负责人,带领大家学习
  • 比如坚持写学习笔记
  • 比如坚持发文章
  • 比如给大家做一次技术分享

把自己抛出去,丢人的事我来,有压力的事我抗住,做自己不敢做的事

你不妨大胆一些,再大胆一些

从工作中谋求成长

并不是学的东西越多,成长越快

所学的东西,要能落地,运用到实际项目中才是最关键的

举几个我学到,并用到项目中的小知识点

1、看了webworker的文章知道前端可以开启多线程,解决了项目中前端10w条数据的运算问题
2、看了如何分析页面的内存,通过分析JS Heap图,解决了客户电脑配置低,页面经常崩溃的问题
3、通过React Fiber才知道了 requestIdleCallback 这个api。在做前端监控项目时,就是利用在浏览器空闲的时候,上报性能数据

后面的路

还是选择工作中可能会用到的方向,或者说可以落地的方向去研究

工程化,是个人最感兴趣,也是相对容易上手的模块

打造自己的组件库? 自定义脚手架? 前端监控?前端性能与内存分析与优化方案?
自定义loader、plugin、babel或npm插件?
代码检查规范eslint?全局埋点等等

低代码,公司有自研的代码平台,但是性能与扩展性较差

市面的低代码有哪些,为啥大厂都在自己的低代码发力?
如何基于公司的业务,打造自己的低代码平台?
看看阿里开源的LowCodeEngine低代码引擎和成熟的画布插件?
其中的性能问题如何解决,如何让后端渲染?

可视化,echats、d3.js、canvas

还没有做过可视化的东西,还是个黑盒,目前组件库有个需求,要搞个关系图谱,玩一玩d3?

源码解读,暂时还是vue为主,react为辅

中小型公司大多是vue为主,react为辅;而大厂都是react为主,vue为辅,好气……
建议:react和vue都要对比的去看,去学习,没有谁好谁坏之分

结语

一句话:还是多写,多练习吧
看十篇讲webpack的文章,不如跟着手写一个简易的webpack来的透彻

以上所有观点仅是我个人的一些经验之谈,仅供参考,欢迎一起学习交流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海阔~天空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值