前两天北京下雪了,很冷。2022 招聘季,如同也比今年 冷一些。
2021 年 K12 的大量裁员,腾讯、快手、字节、滴滴、蘑菇街也在裁员。
- 想要换工作的同学应该筹备些什么呢?
- 面试流程是什么样子的?
- 如何应答面试呢?怎么样能够进步成功率?
如果你关怀下面的问题,并且你的指标地位不超出 我的能力范畴(高级工程师、阿里 P6、字节 2 -1)。我会以我教训给你一些倡议
面试流程
- 温习、筹备
- 投递简历
- 一面
- 二面
- 三面
- HR 面
- 定级、谈薪
- 定入职工夫、收 offer
怎么筹备面试?
后期筹备
集体介绍
每一场面试第一个环节都是「请做一下自我介绍」,所以这个问题肯定要提前准备好。
如何筹备?集体介绍重点是什么?
咱们先 从面试官角度 来看一下 面试官想晓得什么?
-
姓名
- 如果你的姓名中有 生僻字、多音字叫错还是比拟难堪的
- 确认你是否和面试官手中简历匹配。我就遇到过异常情况,候选人是面试 java 开发岗位
-
工作状况、我的项目详情、技术栈。尽管个别面试官会提前看过简历,然而有时候简历并不能很好的展现所有内容,所以 须要一个简短的介绍来通知面试官
- 比如说上家公司做音视频的、上家公司做 ERP、上家公司做 IM 的、在线合作、协同办公、项目管理、云服务商。如果说 你从 YY 直播跳虎牙直播,是比 YY 直播跳金山办公要匹配的多,公司匹配的话成功率更高,业务场景也更理解。比如说腾讯云、阿里云。
- 比如说做挪动端流动、做 toB 的服务平台、做电商。你之前做挪动端面挪动端岗位成功率更高,比如说 抖音电商跳快手电商,就要比今日头条跳快手电商好。
- 比如说应用 JQuery、Vue、React、React、threejs。你简历中写了 React、Vue,然而你更善于 Vue,面试官无奈从简历中看到两个技术在你手中的把握水平
-
善于什么?劣势是什么?
- 比如说你长于做挪动端我的项目,长于应用 Vue,长于和其余部门沟通
- 比如说你做过一年 Node 开发,能够独立开发,能够独立进行技术研发工作
- 比如说你长于对我的项目进行优化
- 甚至说你有过我的项目经理助理工作教训都是你的劣势。
- 社区影响力,github 有开源我的项目,思否、掘金、CSDN 有内容产出
集体介绍案例
接下来咱们就能够针对面试官写一份适合的自我介绍
-
你好,我叫 xxx,我在上一家公司做的我的项目是和 XXX 相干。
始终从事于 web 方面的工作,把握的前端技术有 xxx。
在上一家公司中,我播种不单单是技术方面,次要还有业务能力,自学能力和共事的沟通能力,这都是我学到的,而且我认为很重要的。
我的性情方面不算内向,也不算外向,跟敌人,共事相处,比拟内向,在工作中,代码开发时,我是比拟外向的,我喜爱全心全意的投入工作中。我也喜爱交朋友,偶然跟敌人聚聚,聊聊。对于工作我总是抱着认真负责,有责任心,吃苦耐劳的态度工作。谢谢,以上是我的自我介绍。 -
面试官下午好,我叫 XX,明天来应聘贵公司的前端工程师岗位。我从事前端开发两年多,有 X 年的 XXX 开发教训,在上家公司次要从事 H5 页面,后盾管理系统,混合 App 等我的项目开发。平时喜爱逛一些技术社区丰盛本人的技术,像思否,掘金之类,记录本人的工作总结和学习心得。
我的性情比拟温和,在工作中代码开发时我喜爱全心全意的投入,对于工作我总抱着认真负责的态度。面试官,以上是我的介绍,谢谢。 -
面试官你好;我叫 XX,16 年本科毕业于 XXXX;毕业后在合肥卫宁,一家医疗软件公司工作,技术上前后端、数据库包含我的项目部署都做,属于全栈开发,18 年来到上海入职京东始终到当初,做的是线下商场的后盾及接口开发; 老的我的项目还是
mvc
,新我的项目都做了前后端拆散,前端用到 H5、小程序JQuery
、EasyUI
、VUE
、Angular
,后端用到.Net Framwork 4.5,4.6
、NetCore
、Java
,数据库用到SQLService
、Mysql
、MongoDB
、Redis
,中间件用到RabbitMQ
音讯队列,在公司是外围开发的角色,负责老我的项目的保护及二次开发,和其余开发相比,我的劣势在于沟通交流能力比拟强,还有我的责任心和学习能力也是比拟强的,如果有幸退出 XXXX,我置信我能疾速融入团队,疾速把握公司相干的技术;谢谢领导。 -
面试官你好。我叫 XXXX。
次要技术栈是Vue
全家桶、jQuery
、原生、Node
,CSS
能力也不错,常见布局、伪类、过渡动画都会。
上家公司是做音视频泛娱乐社交这块的,竞品如:全民 K 歌、唱吧、YY、快手、抖音之类的。
我次要做挪动端流动这块,年度庆典、小视频流动模版、直播间广告位之类的,PC 端也做一些,比方 PC 的 IM 零碎。因为公司的用户群体个性,对于兼容低版本设施有挺多教训。
平时也常常在思否社区做问答,写文章笔记之类的,对于 BUG 排查有敏锐度,也长于沟通了解问题。
常识储备
常识储备是咱们面试胜利的必需品。次要分为两局部:护城河、扩大。这里次要还是靠平时积攒,面试时针对高频且不会的增强记忆。
接下来咱们还是针对前端面试来举例。
前端护城河
什么是护城河?这都不会干屁前端! 没方法就是这么卷,所以这里只能去卷一些 八股文。
然而我举荐还是 由易到难 , 高频到低频。
-
HTML、CSS、JS 基础知识
flex: 0 1 auto
是什么意思?- css 有哪些伪元素选择器
- HTML5 语义化标签有哪些?
- 闭包编程题
- 手写 Promise 实现
- 手写 requestCache 实现
- 同步异步、微工作宏工作
- 深拷贝
-
Vue、React 常见根本框架
- 生命周期钩子函数
- 如何获取原始 DOM
- 如何获取虚构 DOM
- 原理是什么?如何实现?
- 对 diff 的了解
- 数据双向绑定如何实现?兼容性?
- 状态治理、组件通信
- 路由跳转
-
ElementUI、antd 根本框架搭配 UI 库
- 组件化开发
- 源码了解水平
- 能力相熟水平
-
浏览器基本知识
- 浏览器缓存原理
- 本地存储
- 根本能力(上传、下载)
扩大
这里个别就 不局限于前端 ,也不要求全副把握,然而 个别都会有一些善于点。
-
打包构建、前端研发工具(webpack、babel、gulp、vite、eslint)
- webpack 降级。
- eslint、stylelint。
- git hook。(husky)
-
我的项目优化
- 打包速度优化
- 加载速度优化
- 产物体积优化
-
跨端、跨平台、跨技术、跨语言
- Node
- Python
- nginx
-
git、svn。
- 如何回滚代码
-
网络
- https、http、http2,三次握手、四次挥手,如何保障平安
- websocket
- response 响应状态码
- 强缓存、弱缓存
算法练习
算法练习没什么好说的,简略必须会,中等也要做一些,艰难看集体能力,把握常见数据结构。个别就是举荐力扣、牛客。
学习门路的话是先理解数据结构,而后针对性做题,做不进去看题解。
-
链表、数组、字符串
- 查找是否有环?入环点在哪里?
- 快慢指针、双指针
-
树
- 先序遍历、中序遍历、后序遍历
- 均衡二叉树
- 栈、队列
- 动静布局
- 图
我的项目复盘
我的项目个别是为了看看你做过什么,有什么杰出的中央,不是为了听你说一堆没用的。
这里属于一个没有标准答案的题,也是一个能够提前准备的题。
我面试的时候筹备了三个内容,并且对具体实现办法都做了粗疏的应答计划。
-
PC IM 音讯列表优化,其中有长列表优化、排序算法 Bug 及优化思考、多音讯类型反对、音讯手法机制、发送框实现等等
- chrome 的 sort 应用了什么算法。chrome 低版本用的是什么算法。原理是什么。
- 本人应用了什么算法?二分查找 + 插入排序。从 xxms 优化到 xxms。
- M 直播间广告位设计,其中有排序规定、动静载入规定、动静上线下线规定等等
- 我的项目加载速度优化
常见问题筹备
一般来说会有一些高频问题,咱们能够提前准备一下。当然 具体还是要看你的技术栈是什么,你能够针对你的技术栈做非凡温习。
- 职业规划
- 为什么抉择前端
- 集体介绍、我的项目介绍
- promise
- 浏览器强缓存、协商缓存
- 闭包
- vue 数据双向绑定原理
- 菲波那切数列
- 微工作、宏工作
面试前筹备
如果说咱们 简历、常识储备、常见问题都准备就绪 ,那么接下来咱们就能够开始 以战养战。
投递岗位
不倡议海投 ,举荐你抉择二线、一线、大厂, 把本人心仪的公司放在第二三周。
- 造就题感。(我面试的时候一道简略的题没做进去,超级难堪,那道题是一道我十年前就会的题,然而第一次面试的时候怎么都想不起来。懵了)
- 造就自信、调整心态、辞别缓和。如果你在面试的时候手里曾经有了保底的 offer,那么你整个人的精力都会不一样。而且要价的时候也更大胆。(我面试的时候回绝了金山,因为薪资低)
- 由易到难、由低到高,缓缓晋升。其实有时候小公司也挺爽的(前端 10 人±),太少的就不举荐了。
能够抉择适宜本人的岗位投递,并不是比如说快手所有人都在做 App,也会有做面向机构的服务平台,也会有面向电商的服务平台,还有对内的基建中台等等。抉择一个适宜本人的岗位比乱投强太多了
面试真题(针对性搜寻)
这个就属于玩赖了,比如说你面阿里,能够针对性去找一些阿里一面面经,最好把岗位部门带上(会有意外惊喜哟)
依据我面过的几家公司,网上是有真题的。
如果你常混社区的话,你甚至能够 问问面过的前辈
面试后筹备
面试完不代表着完结,收到 offer 才是完结。
面试复盘
所以这口气咱们不能松,能够在面试后把所有题都记录下来,而后看看本人那个题把握不够全面。
- 记录所有的面试题。网上搜寻材料排查是否有答复不清晰,缺斤短两状况
-
录屏。做更残缺的复盘,包含语气节奏、口头语、面部表情、反应速度等等。
- 从我本人来说,我即兴是不如我有筹备的。同样一份材料,在我 无筹备讲进去会多很多口头语,甚至我在讲的时候都会留神到这个问题,然而我无奈解决,也克制不住,留给我调整的工夫太少了。所以我只能做很多筹备。
-
如果有不会的题,千万要查一下,而后记住。因为下一面有可能会考近似题。面试官也会通过这种形式来看你的自学能力。
- 比如说你面第一个公司的时候,问了你权限的问题。那么你就应该重点关注一下,比如说按钮权限,异步权限,如何和服务端交互。这个问题在二面甚至说其余公司都会再次遇到。
真题整顿
下面说了复盘的重要性,也说了须要整顿真题,这里次要是 须要你留神分类,而且须要看到题后的内容。
有时候面试题只是考点的一个利用场景,所以咱们须要看到背地的常识,不只是把面试官问你的问题搞会。
一般来说 面试题会合乎部门场景,做 PC 的部门不可能问你挪动端适配原理。
-
css
-
「字节商业化」权重计算。
.a .b{color: #f00;} .b[data-role="1"]{color: #0f0}
- 「阿里」选择器
- 「快手搜寻」「腾讯开放平台」css 单位
-
-
网络
- 缓存
- https、http、http2
面试中有哪些最最最常见的坑
简历
到了我集体善于的地位了。哈哈哈,我看过成千盈百的简历,根本没有看错的。
-
一眼假 的简历(工作工夫、经验造价),个别针对实习生、应届生、培训班简历比拟常见。
- 纯熟应用 Vue + react,其实一般来说为了 保护老本 、 学习老本,失常公司都会对立技术栈
- 纯熟应用 Node xxxx,目前来看全栈工程师并不是很多,都会有可能只是 半桶水
- 我的项目经验不属于同一家公司。比如说一个我的项目是医疗,一个我的项目是石油,我的项目跨度很大 。这种个别咱们思考 是否存在教训积攒,一个继续迭代的精密我的项目才是咱们想看到的。
-
我的项目经验一看就比拟水、或者开源我的项目、样子货。比如说网易云、饿了么,Vue1 的时候就开始仿饿了么,Vue3 还仿。
图片来源于沸点:https://juejin.cn/pin/7072864…
-
错别字简历、排版异样简历、雷同简历、异样简历
- 局部简历会存在一些错别字,尤其是 Reat 之类的错别字。千万不要有错别字 ,会显得不仔细。而且 简历应该每个字都是用心写的。
- 学历异样、外派外包。我不歧视外包外派,然而从团队内任务分配、稳定性等多方面来说,确实不是很现实,须要多留神。
- 雷同简历呈现在同一学校、毕业季,上下午两个人简历截然不同。简历不是论文机器查重,不论是 ERP 的登陆权限零碎,还是后盾管理系统的登录权限零碎,都是雷同的简历,不是改个名称就叫不同简历。
-
异样的常见性能,对于有工作教训的人来讲反而不是常见性能。不是说常见性能,肯定就是开发常开发性能
- 比如说 登陆注册、权限、菜单,登陆一般来说都是现成的性能,不会轮到你再去开发。
-
不是每一家公司都认为你的“玩具”很有意思。
- 比方你说你写了 IM 相干的性能,如果你面试的也是 IM 相干的部门,那么很大可能性会揪着这个性能深挖。
- 如果你写了性能优化,那么会给你一个近似的场景考你,看你有没有去做优化的动机。
面试筹备(面试题、算法题权重问题)
倡议你先筹备基础知识题,而后常见题,最初筹备算法题。肯定要记住 由易到难。
如果不是高级、专家岗位,算法都能够临时放弃。
- 我面试一面简略算法没答出来,然而并不影响我面试后果。顺利通过面试拿 offer。
- 有个敌人,根底题还没搞会,疯狂练习算法。到当初还分不清 判断是否有环 和查找入环点 两个题的区别。(快有十年工作教训了,还混在中级工程师)他认为算法好了就能换到大公司,然而算法题个别都在比拟前面考查。
面试中
- 问薪资。一般来说前几面只是同级共事,不应该晓得你的薪资。也无权决定
-
“攻打”面试官。面试是否通过,就是当场面试官的一句话,很少公司有考核审查伎俩。所以不倡议攻打面试官,放平心态(如果你不在乎这个机会,并且感觉和这样面试官共事比拟恶心,那么怼就怼了。无所谓哈哈哈哈哈)。
- 我就遇到过一个人,面到一半跑了,和 HR 反馈我不业余。然而对我并没有什么影响。
- “贿赂”面试官。尽管说以后这场面试,面试官能够帮忙你,然而前面还会有其余考核(天黑路滑人心简单呀)。所以还是靠本人真正的实力比拟好。
- 拖时间。一场面试 20 分钟至 60 分钟,会存在定会议室(HR 不帮定会议室,且有工夫限度),工期挤压(面试属于突发工夫,且不计算在失常工期中)等问题。所以不倡议在单个问题上拖时间,这样会导致无奈全面考查,间接判负。
- 不敢问面试官。面试官都是比拟和善的,一些面试官也比拟善于引导你答复问题。即便没有疏导进去,给你个方向也是坏事,面试官教训比拟丰盛,如果是独自的技术咨询来看显著是赚了。
面试官个别会问些什么问题?
一面(基础知识)
一面个别是同级共事、同级领导(斜线领导),属于主力开发,业务教训也比拟足。一面偏重基础知识
-
我的项目考查(2 个)
- 介绍一下你最近做的我的项目
- 介绍一下你在这个我的项目里做了什么?有什么杰出的嘛?
- 你是怎么进行我的项目优化的?你是怎么设计这块权限的?你是怎么实现这里的?你的设计思路是什么?
- 你在我的项目中负责什么?有什么特地称心的中央的?
- 你们团队形成是什么样子?开发流程是什么样子?有什么优化空间嘛?
- 印象中最深的一件事
-
根底之类(6 个±)
-
js、css、html 根底题。(2 个)
- css 款式优先级、权重计算、选择器、Flex 布局等等
- js 场景类型、数组办法、闭包等等
- html 语义化标签、其余能力?
-
js 高级开发(2 个)
- Promise、await、async、异步同步、微工作宏工作
- 继承、class、ES6+
- TS
- webpack、gulp、babel
- 框架常识 Vue、React
- requestCache、主动重试、异样上报
-
扩大常识(1 个)
- http2、http1.1、https
- nginx
- node
- echarts、threejs、ui 等等
-
-
算法(1 个)
- 个别会出初中级难度的题,链表、树、栈队列比拟常见,图如同少一些
- 考查工夫复杂度、空间复杂度
- 会让你讲一下想法
- 会让你思考有没有优化空间,如果有会逐渐优化
- 简历异样点(学历、工作变动频繁)
-
一般聊天
- 为什么到职呀?
- 为什么抉择咱们公司呀?
- 为什么学前端呀?
- 住哪里呀?
- 平时有什么喜好
- 如何学习前端?
- 逛社区嘛?
- 对咱们公司什么认识?
- 感觉明天面试体现怎么样?
二面(我的项目)
二面个别是不同组共事,一般来说是跨组穿插面试,当然会有可能不是前端。二面个别更 偏重我的项目
- 我的项目考查(同一面,但有可能切入点不同)
- 高级利用(同一面,然而个别会和理论业务关联)
- 算法(同一面)
- 一般聊天(同一面)
这里能够看到,如果一面过了,二面根本是稳的。
因为一二面自身级别差不多,有可能面试官不是同技术(java)、升职不是技术(产品)
三面
三面个别是直系领导(50 人至 100 人团队负责人),可能是前端,也能够是其余端,只能说必定是个技术人员。
- 我的项目考查(同一面,切入点不同,会更加深刻甚至扩大转换)
- 算法(同一面,然而有可能不必写,只考思路)
-
扩大常识
- 我的项目如何协调
- 分支如何治理
- 工作进度如何治理
- 上线流程是什么
- 发版流程是什么
- 部门介绍
- 一般聊天(同一面)
一般来说高级工程师就只有三面,三面的这个人就是决定你是否能入职的那个人,三面面试官个别也是一面面试官的直系领导。
HR 面试
-
一般聊天(同一面)
- 职业规划
- 为什么抉择咱们
- 你在原来公司负责什么
- 为什么到职
-
薪资冀望
- 你以后的薪资
- 你冀望的薪资
问面试官哪些问题?
一面
一面面试官个别就是你的共事,也是主力开发,是真正的打工人。所以这在一面环节你能够多问一些你关怀的内容
- 面试官是谁?是否为你的共事。
- 工作状况
- 基建状况
- 团队气氛、团队规模
- 技术方向
- 本人体现怎么样
- 本人没答好的题,看看能不能给个方向。
二面
二面面试官因为存在穿插面试的状况,所以可用信息不太多。
- 面试官是谁?是否是你的共事,还是穿插?
- 本人体现怎么样
- 问面试官所在的团队气氛
- 本人没答好的题,看看能不能给个方向。
三面
三面面试官是你的直属领导,能管得事也比拟多,你能够问一些其余的货色。
- 降职机制、培训机制是否欠缺
- 团队气氛
- 所做业务
- 团队布局
- 有不懂的点也能够问,白嫖的交换机会啊。
本文参加了 SegmentFault 思否征文「如何“反杀”面试官?」,欢送正在浏览的你也退出。