1. 前言
作为一个在2022年毕业的普通民办二本学生,我于2022年5月份步入职场,加入了一家民营企业的前端开发团队。虽然公司的前端技术栈相对前沿,但很快我意识到,自己的职业发展需要更大的舞台和挑战。
可能我面试的公司 不是各种大厂 不像掘金中发帖子的一些大佬 面经都是面试大厂的 不喜欢希望误喷。谢谢
2. 在初职的日子
在我目前的公司,我负责后台管理系统的开发。很快我发现,每天的工作重复度很高,大部分时间都在进行增删改查(CRUD)操作。尽管我独立承担了两个项目的开发,但我觉得公司的技术学不到新的东西,且公司没有调薪计划,这让我考虑到了跳槽。
3. 面试之路
泛微(挂)
第一家面试的是泛微 一家国内做OA系统的 面的是全栈工程师 后端技术栈用的是node.js 但是属于是二次项目开发 在原有项目基础上去给客户定制开发。复盘:最终由于我在CSS和SQL方面的基础不足,我未能成功。
一面
- 进行自我介绍
- 简述事件循环原理
- refs是用来做什么的
- css您这里熟练吗 在项目中css写的多吗
- 原生js中如何阻止冒泡
- vue 的keep-alive的作用是什么?怎么实现的?如何刷新的?
- vue 是怎么解析template的? template会变成什么?
- 说一下你认为你项目中最难的地方
- 增删改查的sql语句说一下
- 如果一个接口请求后 没有数据结果返回 你该做如何处理
不知名的小公司(offer)
其实就是为了涨一涨面经 没想到竟然过了 这家公司的前端团队比我的初职公司还小。经过三轮面试,尽管我展现了不错的技术实力,但由于薪资问题,我们未能达成一致。
一面
- 上机写一个ToDoList 可以完成增删改查功能(15分钟)
- 数组都有哪些方法、哪些方法会改变原数组、哪些方法不会改变原数组
- TS中新增的两个数据类型是什么
- forEach和map的区别
- 在antd的Table组件中如果你在第二页进入了某一个数据的详情页后 你在返回到列表页的时候 页数会跳转到第一页 这个问题您怎么解决
二面
- 讲一下你们的项目情况
- 如果在项目开发过程中 如何能避免需求的变动
- ts中interface和type有什么区别
三面
- 介绍下自己
- 为什么要跳槽
- 您觉得您会给我公司带来什么利益 我公司又会给您带来什么利益
上海班图网络科技(挂)
公司是做游戏的 面试的是node.js开发工程师 前端用React+antd 我当时理解的就是全栈开发工程师 但是到面试后我发现不仅仅需要写后台管理系统 还要使用node.js做游戏开发 复盘被挂掉的原因:前端八股文没背熟悉 问了很多后端知识
一面
- 进行笔试
- es6新增的特性
- 如何创建node.js集群并做到不中断重启
- redis了解过吗
- 列举js中数组遍历方法 追问 for in 和for of 可以遍历数组吗 追问 有什么区别
- 如何不使用第三个变量来交换两个数的值
- 编程题:现有1000个苹果,10个盒子,问各个盒子内应该分别放入多少个苹果,才能使得用户要买任意1至1000之间的一个苹果数,都可以给他(卖的时候是整个盒子卖,不能拆盒子的包装)
哈敦智能(挂)
尽管我认为自己在这次面试中表现得相当出色,但还是被哈敦智能刷下来了。这次的经历让我深感面试有时也带有一定的运气性。
一面
- forEach和map区别
- 数组中有多少种方法
- async和await有什么区别
- some和every分别如何用
- 看你简历中软件著作权能说下这个怎么申请的吗
- 为什么选择前端这个职业
- 手撕代码:不用sort实现数组排序
- 手撕代码:判断括号是否配对
const str='(a*(b+c)+d)*e)'
- 手撕代码:把所有的name节点都取出来,最后放到list数组里面
const Tree =[
{
name: 'a0',
children: [
{
name: 'a0-0',
children: [
{
name: 'a0-0-0'
}
]
}
]
},
{
name: 'a1',
children: [
{
name: 'a1-0',
children: [
{
name: 'a1-0-0'
}
]
}
]
}
]
const flatten = () = {
const list = []
return list
}
上海派森诺(offer)
面试过程中,我对这家主营医疗科研的公司留下了很好的印象。但由于薪资问题,我们未能达成共识。
一面
- 介绍下你的项目
- react函数组件中如何模拟生命周期
- react里的key的作用是什么? 为什么不能用Index?用了会怎样? 如果不加key会怎样?
- 扩展运算符如何使用,你用来会做什么
- 类组件和函数组件有什么区别,你觉得哪里好
- every和some的区别
- forEach和map,谁的循环遍历可以提前停止
- 如何实现垂直水平居中
- useMemo、useCallBack、React.memo有什么区别 分别都是什么作用
- react如何实现性能优化
- react18的新特性有哪些
- TS中泛型如何使用
- 讲一下你项目中的功能实现
二面
就是线下聊聊天 没有问技术问题
爱用科技(被刷kpi)
公司是做 电商的 但是一面是hr线上视频面 绝壁是hr刷kpi面了 谁家正经公司想招人 一面hr面
华粤企业集团(挂)
我的前同事向我推荐了这家医疗公司。虽然技术栈并不是我期望的,但也想着现在面试机会不容易,技术栈之前是jq 新项目上的是vue3应该也没有多长时间 而且还没有上TS 感觉公司不是很注重前端技术栈这里 这个公司没什么好技术复盘的 问的都是八股文
一面
- 说一下h5的新特性和语义化
- 如何实现排序 不允许用es6的方法
- vue如何进行父子组件传值
- 场景题:如果让你做指纹验证 如何做
- js原生方法了解吗 说几个方法
上海云轴信息(挂)
这家云计算公司的技术氛围吸引了我。但面试题目深度较大,我意识到自己的经验和知识还远远不够。
一面
- React router底层原理是什么,要让你实现一个类似的功能,你该如何实现
- 如何实现一个深拷贝 说思路就行
- 浅拷贝和深拷贝有什么区别
- useMemo和useCallBack做了什么事情,底层原理是怎么实现的,如果要让你实现一个useMemo如何实现呢
- 你公司中为什么要选择用umi这个框架呢
- 单元测试有做过吗,覆盖率能达到多少
- graphql了解吗、使用过吗
- 云计算相关知识了解吗
某区块链公司(offer)
公司做海外项目的 原本没有抱太大希望,因为我了解到公司里的员工都有大厂的背景。但出乎意料的是,经过三轮面试,技术面、总监面和HRBP面——我顺利地通过了。面试过程中并没有太多难题,这让我真正的理解了面试真的靠运气,已收到offer,薪资待遇也很满意,期待新的工作和挑战!
4. 总结与反思
上面的面试问题 有的不全 因为都过了好久了 每次面试完后 也没有去整理每次面了什么 只是大概记得这些 这篇文章只想记录下 毕业后第一次跳槽的经历,面对如今的市场形势,历经三个月的努力挑战。每一天,我都坚持不懈地寻找新的机会并投递简历。尽管面试的机会凤毛麟角,这段旅程让我深感心酸,甚至一度对自身的能力感到迷茫。然而,我最终收获了应得的果实,深知只要坚持和努力,好运迟早会到来。