六年前端面试报告

131,577 阅读8分钟

2022.10.20 在当前公司待了两年多,被离职了,拿了点赔偿金继续面试。薪资期望 13-15, 趁着今天1024整理下面试过程。

上一次面试我是4年经验,简历也好改,加上两年经验,补上现公司项目就出去找工作了。

简历改完后,首先分析下自己现阶段水平,大概能要多少,定一个期望薪资。再就是背面试题了。

自我分析

普通三本,六年前端,有后端经验(python、mysql),前端常用框架 Vue/React 使用经验各占一半。项目有工业互联网SaaS、点餐APP、ERP、小程序和微信公众号和h5活动模板,几乎包含了普通互联网公司的大部分平台和场景,而 hr 一般挑简历也是关键词匹配的,所以我想在线简历应该会比较占优势。

在西安发展两年多了,我的薪资是10涨到12的,进了公司是很难涨薪的,所以我希望下家公司一定要比12高,期望就定到13-15,肯定有人要问为什么不要15+。我的感觉是要不到,打开某直聘,你能看到大部分是10-15的岗位,10-20基本上也是取最低,当然大厂除外。

面试题部分,在这个行业也这么久了,肯定知道人家经常问啥,基础题当然得速战速决。哪里不会学哪里。

面试题准备

虽说我上面列的一些项目能满足大部分场景,但是很多岗位要求里,什么 uniapp、3d、小程序开发等等,直接无视,重点就三个,js、vue、react。

css、less/scss、webpack、http这些部分暂时舍弃,项目里这些部分都有涉及,甚至花时间买过很多这种课程或者书,但是学完就忘,光笔记留下了。所以并不是一点都不懂,只是脑容量有限,得有所取舍。

js 很重要,很多概念也容易忘,挑些最重要的记

  • 闭包
  • 原型、原型链、继承、类
  • promise
  • 事件循环原理
  • 变量回收机制

vue

  • vue2响应式原理
  • vue2组件、生命周期、监听器
  • mvvm
  • keep-alive
  • diff算法
  • 生态,路由和vuex
  • vue3特性
  • vue3响应式
  • vue2 vue3区别

react

  • 虚拟dom
  • fiber
  • hook

算法部分

  • 排序
  • 二分查找

想了下重要又薄弱的就这些了,剩下的就凭自己的记忆freestyle吧,不会就直说了也不墨迹。

然后就是边面试边整理面试题。

面试

朋友说现在疫情,大环境不好,让我多投几个平台。我比较懒,平台就开了某直聘。

这次面试历时一周,面了5家,复试2个,offer 1个。不算理想,但是够快。

周一投简历约面试,周二面了两家,周三第一家终面并拿到offer,然后继续约面试,一直到周五。

看下面试题:

A公司

1.浏览器渲染过程

2.scss用过哪些功能

3.怪异模式下 100*100,padding为50的盒子显示的宽高为多少

4.业务问题:

  • 画布中如何在鼠标点击的位置生成table,在vue项目中如何实现,点击一下生成一个table
  • 生成的table可以拖拽,并在鼠标放下时复制,怎样复制table组件,提供个思路
  • table左上角有角标,如何实现

5.业务问题

  • 如何实现用户下拉选择主题,选择后网站整体换肤
  • 坦克大战子弹打中砖块消失,设计思路有考虑过吗
  • elementUI中,日期组件,一个日期弹窗选择三段时间,如何实现,比如规定用户选择10.1-10.7,10.11-10.14,10.18-10.20
  • 下拉选择组件用户选择 label,后台传入id,在vue中如何实现更优雅

6.npm run dev执行过程,把你知道的说说

7.引用文件时经常用到的@符,一般指向的是哪,比如@component/xx.vue

8.html中写css和js对页面渲染有什么影响

两个前端组长交叉面的,我业务问题答得不行,但是从这些业务问题可以看出来考察点,

包括vue组件传值,事件、样式变量、canvas...甚至是脑筋急转弯式的功能点,答案是开放的,不止一个解,也能反应应聘人的构思能力。

面完第一家公司,我陷入了疑惑,是时代变了吗,怎么不问经典面试题了,还是因为年限高了问的也不一样了。

B公司

1.vue、react区别

2.es6哪些常用功能

3.vue router有哪些钩子

4.vuex包括哪些模块

5.组件如何传值

6.vue是如何实现响应式的

7.jQuery中attr和props区别

8.vue中父子组件渲染,生命周期的过程会怎样显示

....

这个确实是太规矩了,全都答出来了。

A公司复试

疫情期间线上面试,主要是跟领导谈话,自我介绍之后对我做过的项目提问,再就是类似领导谈心的问题

  • 为什么去杭州又为什么回来
  • 对前端的看法
  • 对新公司的展望,期望在什么样的环境下工作
  • 想找个什么行业或领域的公司
  • 对技术栈有什么要求

我说我就希望钱多双休离家近,他给我的反馈是「感觉你人比较靠谱」,接下来还有个终面。

A公司终面

还是在线面,换了个领导,聊的话都差不多,算是大领导摸底吧,这次面试很快,也就10分钟

C公司

去了先机试,公司没前端,机试是一个小时写个移动端的商城详情页。页面类似于京东商品详情页吧,给的组件包是elementUI的,我很纳闷这咋写移动端的,不管了先完成再调。

我花了一个小时写了个PC端的,还只完成了导航和俩轮播图,时间真的快啊,我一上来写了个大致的框架,header、body、footer,导航和轮播图样式调完,再右边商品信息写完时间就过去了。

最终面试官不满意我也不满意。

D公司

公司3个前端,用Vue3去写项目的,据开发的话来说是自己卷自己,因为有了offer,过去就很轻松,问题回答状态也比较好。

  • 跨域怎么做的

  • 项目中怎么用vuex的

  • 连续调三个接口,ab接口调完之后再调c接口,你会怎么做

  • 接口是如何封装的,其实问的就是前端处理接口的请求、响应头文件内容

  • 项目中遇到哪些难点

  • 封装过哪些组件

  • 项目中如何鉴权的,即用户登录以后会发生什么

  • 小程序有没有大小限制?如果超过限制了怎么做

E公司

  • 事件委托

  • vue的生命周期

  • http有哪些缓存

  • react的hook useEffect作用

项目部分

  • 项目中你遇到的难解决的问题有哪些,最后怎么处理的

  • 分给你的需求你不能完成时你会怎么做

  • 你封装过哪些脚手架,其他同事怎么用你封装的脚手架

  • 有没有考虑过开发vscode插件完成

  • 你开发的数据大屏有什么亮点,echarts部分有没有配置比较复杂的图

  • 有没有做过实时通讯方面的模块

  • 你最近在看哪些技术书

面试分析

面试题没什么好总结的,网上太多面试题例子了。当前年限的前端问的问题还是业务为主,通过业务问题能分析你

  • 是否理解你做的东西,具体理解的有多深,(需求分析)
  • 完成思路
  • 应用了哪些技术(技能应用)
  • 需求完成后的总结能力(你遇到的难题)
  • 领导能力或与同事共事能力(是否独立完成,如果完不成怎么做)

业务不光是你做过的项目,还有面试官会把自己公司的需求抽象来提问,比如A公司,来考察你应对需求的思考能力,问题是否能解决还是看前期的构思的。

感想

面试还算比较顺利,一直在公司也怕跟不上变化,所以这次离职对我也是个机会。

但有个问题是,在公司不管你待多久说毕业就毕业,然后赔偿也比较少,让我对未来发展有些恐慌。

好在这次我刚好处在5-10年区间,如果过了这个区间,后面怎么发展呢?

我也就这个问题跟面试官聊了下,他们说可以转技术总监啊、架构师或者带团队之类的。

我再搜了下10年以上的岗位,确实都是架构、技术总监、产品经理等职位,但是要求都是后端相关的,所以现在也不知道如何起步。欢迎评论区大家一块聊下。