为什么现在前端面试都不考八股文了?

共 3192字,需浏览 7分钟

 ·

2024-04-11 07:10

作者:前端双越老师

链接:https://juejin.cn/post/7336859385782583308

年前就有和几个同学在和我聊天的时候,说:现在面试都不考基础知识和八股文了,上来就聊项目

其实我也很早就意识到这个问题了,现在和前几年完全不一样了。
2021年之前,随便写个简历,背诵 1-2 周八股文就可以去面试了。而现在,每一步都很困难。

举个例子:Vue 性能优化方式

我经常会问一个问题:Vue(或 React)有哪些性能优化方式,请结合项目说明

很多同学就开始背诵了,一般第一条是:使用 v-show 不要使用 v-if ……
他还没有背完我就会立刻打断他,然后追问:在你的项目中,什么情况下需要用到 v-show 请举例说明。

一般这个时候他就懵了,不知道如何回答,因为真的没用过 v-show。而且之前准备的时候压根想不到,光知道大家都这么说,就背诵下来,一看到问这个问题赶紧一顿输出回答。

这种类型的问题还有很多。例如简历中写“首页加载速度提高 50%”,我会问在优化之前具体是多少秒?再例如简历中写“代码体积压缩 80%”我也会问压缩之前具体的体积是多少,以及哪几个 lib 占据的最大?

你是否真的有这方面的经验?一旦问到项目的具体细节,立马就能体现出来。这不是基础知识和八股文能代替的。

为什么会这样?

凡事都有原因,我试着来分析一下。欢迎大家来评论补充。

框架普及化

现在前端框架和技术栈已经完全普及,而且基本稳定了,就那些东西。大家开发也都会选择一个框架,一个脚手架,直接按照框架既定的写法来去开发。

但这也同时带来一个问题:框架的普及会降低对程序员技能的要求。例如:

  • Web 开发都使用 Vue React 组件和相应的 API ,你就不需要再去学习 DOM API 。
  • 框架限制你自由的写 JS 代码,你也就很少能碰到像闭包、内存泄漏等疑难问题。
  • Axios 封装了 ajax 的常见操作和配置,也让你远离了 HTTP 协议。
  • 引入各种 UI 组件库,你都不用写 CSS 了 (剩下的一些 CSS 写法也都被 tailwindcss 捡漏了)

日常工作都接触不到基础知识,那面试也就被问的少了,这很正常。

工具精细化

现在各种脚手架,一键为你自动配置 webpack eslint prettier 和 TS 开发环境,不再需要你自己配置。

甚至 vite 直接内置集成了常见的性能优化配置,能满足大部分场景。可能会有自定义的配置,也都被组内的高工做了,不需要频繁改动。

所以现在很多同学工作两三年了,但压根就没有接触过 Webpack vite 的配置。
同理,工作中不需要,面试也不会优先问这些。即便问,也是问像性能优化、原理等高阶问题。

前端人员整体技术提升了

现在不再像 2015 2016 年时,培训机构大量生产初级程序员,投放到市场。
刚入门的程序员,很多都是包装的工作经验,问基础知识和八股文就能淘汰一大批,剩下的就可以顺利工作。

现在大家的平均工作经验都在增加,技术能力都在增加。而且现在网络上的资料和 Ke 程遍地都是,想复习基础知识和八股文比之前容易多了,专心复习 1-2 周就能有很大突破。

水涨船高了,光通过基础知识和八股文已经无法判断优劣。工作经验多了,最后拼的还是真实项目经验。

企业岗位减少

2021 年之前,公司多,岗位多,大家都抓紧招人,组建团队抓紧搞业务。
想快速招人,就不能那么精细,就尽量用标准化的流程和方法,像算法、原理、基础、八股等这些都比较受欢迎。快呀,而且不会有什么大的差错。

现在岗位少了,招一个人不容易,而且来应聘的还挺多,竞争激烈,那企业就得精挑细选一下,面试就得问点实际的。

我们该如何应对?

当前:认真准备自己的项目经验

第一,你要认真写好简历,把你项目的内容和亮点都准确的表达出来。你可以看看我的 1v1 优化简历的一些案例分享[1] 。
你得拿出 大厂程序员写晋升 ppt 的劲头 来写简历。PS:他们都提前一个月就准备 ppt ,上班天天琢磨 ppt 怎么写,而且要经过几轮模拟答辩。

第二,提前准备面试时的项目介绍和项目难点,尤其是项目难点。你不提前准备好,面试时就可能说不顺畅、不全面。我之前写过一篇文章 前端面试必考题:介绍项目和项目难点[2] 可供大家参考。

接下来:参与到一个复杂项目中来,提高项目技能

主要是针对工作中没有复杂项目的同学。工作中没有,那只能业余找一个练手。
PS:时间在一年一年的过,工作经验多了,也会对你的项目复杂度要求更高。

所谓的“真实项目” “复杂项目” 还有更厉害的“企业级项目”,这些词都被各种ke程用烂了,大家一定要擦亮眼睛。

至少要包含如下条件:

  • 真实上线运维的项目,能亲自注册使用的,看得见摸得着的。要有域名、备案、SSL 证书、服务器或 Serverless 服务、数据库、CND、OSS、统计、监控报警等基础服务,最好还有手机号注册、微信扫码登录、微信支付或退款,等常见功能
  • 全栈项目。拥抱全栈吧,纯前端,切图仔,未来没有前途的。前端框架和技术栈已经未定了,你再去卷源码、造轮子没有太多意义的。node 全栈(或 SSR)却有另外一片天地
  • 一个有前途、且实用的业务方向。例如低代码、中台 已经过时了,开源项目也不可持续,都不好。目前看来,AIGC 是一个不错的方向(就在前两天 OpenAI 发布 Sora[3] 智能生成视频,刷爆朋友圈)

我目前也在考虑这方面的事情,有了确定的想法再和大家分享吧。如有建议可以评论或者私信告诉我。

总结

前端面试减少了基础知识和八股文的考察,更多聊项目经验。我觉得这很好,能筛选出更加专业的候选人,而减少“浑水摸鱼”的人。同时也给了大家更高的要求:做好项目,写好项目。

参考资料

[1]

https://space.bilibili.com/697803545: https://link.juejin.cn?target=https%3A%2F%2Fspace.bilibili.com%2F697803545

[2]

%E5%89%8D%E7%AB%AF%E9%9D%A2%E8%AF%95%E5%BF%85%E8%80%83%E9%A2%98%EF%BC%9A%E4%BB%8B%E7%BB%8D%E9%A1%B9%E7%9B%AE%E5%92%8C%E9%A1%B9%E7%9B%AE%E9%9A%BE%E7%82%B9: https://link.juejin.cn?target=%25E5%2589%258D%25E7%25AB%25AF%25E9%259D%25A2%25E8%25AF%2595%25E5%25BF%2585%25E8%2580%2583%25E9%25A2%2598%25EF%25BC%259A%25E4%25BB%258B%25E7%25BB%258D%25E9%25A1%25B9%25E7%259B%25AE%25E5%2592%258C%25E9%25A1%25B9%25E7%259B%25AE%25E9%259A%25BE%25E7%2582%25B9

[3]

https://openai.com/sora: https://link.juejin.cn?target=https%3A%2F%2Fopenai.com%2Fsora

浏览 28
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报