第 57 篇原创好文,扫描下方二维码获取更多~
先作个自我介绍,我花名句号,现任政采云高级前端开发工程师。前端
下面是个人我的经历,我 16 年毕业于山大,毕业后就去了华为,一待就是三年,16 年到 18 年在运营商 BG 作先后端开发,由于当时华为的开发方式仍是偏传统一些,先后端不分离的,19 年在消费者 BG 作前端业务设计和开发,因此总的来讲先后端都有一些涉猎。程序员
在华为共待了 3 年,去年 8 月底离职来了政采云。现任政采云商品中心前端负责人。面试
这是咱们公司的微信公众号。有兴趣的小伙伴能够后面加一下。算法
接下来进入正题,分享一下个人一些面试经验和面试流程,但愿能够帮助到你们。后端
第一点要分享的是个人面试准备,在华为时,由于平时业务比较繁忙,因此大部分的面试准备都是在周末,前先后后大概有 1 个多月,等准备完成以后,才真正的开始面试。设计模式
在入职以前,总共面试了 4 家公司,分别是涂鸦智能,政采云,阿里和微医。首先先说一下当时个人面试准备,从如下几个角度出发:浏览器
1.前端基础知识性能优化
2.数据结构及算法微信
3.源码理解网络
4.历史业务成绩与主导的推进
前端基础知识通常涵盖的内容就比较广,这一块的积累主要依赖平时书本的阅读和代码的积累。
大部分公司会在第一轮面试的时候考察面试者的基础知识,包括但不限于 HTML,JS,CSS,而后咱们熟悉的 3 大框架,React,Vue 和 Angular,但如今的前端市场,前二者的占比会比较多一些,因此个人建议挑选工做的时候仍是以 React 和 Vue 为主,根据以往的项目经验或者熟悉程度,要熟练掌握其中之一,并了解其原理,再由此框架发散到一些周边配套,好比 React Router,Redux 等等。
除此以外像 JS 的基础知识,好比 this 指向,事件循环等面试必考点网上其实都已经很全了,我这边就不展开了。当时我还准备了一些经常使用的设计模式,这一块在面试中的考察也很是多。准备设计模式时不能就准备如何实现设计模式,太飘,须要准备的实际上是设计模式在项目中的实现和实际应用。
我记得个人其中一场面试,面试官考察我设计模式,我一顿讲实现,讲到一半他就打断了我,改问我设计模式在项目中应用,因此其实公司更重视的是技术的应用,只会写不会用就和不会没什么区别。
说到底设计模式这个东西,代码看得多,写的多了以后,就会掌握,不用说一些特别偏门的设计模式,好比用了链式优化了须要按顺序调用方法的历史业务,使代码提升可读性等等。
而后基础知识这块,重点能够提一下前端性能优化,这一块基本上面试一次就涉及一次,能够从四个层面复习,分别从网络资源优化,HTTP 请求层面的优化,JS 优化,渲染层面的优化展开。
针对每种场景至少也要了解 1 到 2 种优化方案会好一些。
我面试的四家公司都有涉及到算法的一些问题,在算法的准备上,能够去 LeetCode 上刷题,我当时大概是天天 1 到 2 题,作完以后再参考其余人的思路。不要只看 JS 实现的答案,Java 的不少方法在思路上,JS 也能够借鉴。
作算法题的主要做用是锻炼逻辑思惟能力,其实前端对于算法的使用频率仍是比较低一些的,因此个人建议是尽可能以难度中等或简单的题为主要练习目标,偶尔作一道困难的题。
再说一下数据结构的准备,主要了解一些经常使用的,好比树,栈,队列,这些都是在项目中应用的比较频繁的,像树的插入,查找,删除等等最近我在项目中还遇到了。
我当时跳槽时主要的技术栈是 Vue,因此个人源码阅读主要是在 Vue 的源码阅读,我在这一块上的准备并非不少,因此在面试过程当中吃过亏。
本身熟悉的技术栈的源码必定要阅读而且有必定的理解,面试通常都会从面试者简历中写的技术栈延伸开。
不少公司会问一些涉及到框架方面的问题,好比很是经典的 Vue 双向绑定是如何实现的。
若是只是读过一些公众号上对双向绑定的总结归纳的话,还很容易在面试中翻车的。源码的阅读主要关注框架核心逻辑的实现,由于面试中也主要考察核心逻辑。
这一点多是不少面试者忽略的。前面说的 3 点都是能够经过学习或者短时间记忆来快速弥补的,但真正拉开面试水平的,个人理解应该是历史项目。
比较多的公司在面试时会先让面试者作一下项目介绍,而后经过项目展开提问,我当时准备的主要从如下 3 点来阐述个人历史项目,分别是项目背景/个人角色和起到的价值,既往对业务的推进,以及过去工做中对团队或者他人的影响。
由于我在华为带领过 4 到 5 人的小团队,承担过 PM 的角色,因此对项目的一整套流程和开发排期上的把控有一些经验。而且推进过组内先后端分离的落地,屡次组织过团队培训。
因此我在简历中和面试时都会把这一块做为重点突出出来。这一项主最重要的是要突出我的能力上的优点,不论是项目管理能力仍是沟通能力仍是推进力,总之把我的的重要性体现出来。
即便基础能力很强,若是在公司中只是一个纯执行者,没有以上几点,也很难在面试者中脱颖而出,因此这一块在简历或面试中能够增强描述。
我进入政采云总共经历了 3 轮面试。
第一轮是技术面,由于我原来在南京,因此第一轮是电话面试,面试内容主要是我前面提到的全部点,包含前端由浅入深的一些知识点的考察,框架的使用能力,不一样场景下具体问题的解决方案和技术细节,上一家公司的岗位职责细节等。
政采云一轮面试内容比较偏细节方面多一些,面试时间也会比较久一些,主要考察前端基本功和逻辑思惟能力。大概有 80 分钟左右,涵盖的内容也比较多,从项目开始问起,HTML,JS,CSS 基础知识,到框架的使用及原理,浏览器和网络知识,Node,Webpack 等等。
第二轮面试是经理面,这一轮是堂主面试的,第二轮面试侧重点比较偏向于综合技术方案掌握以及职业能力方面的我的能力考察,这里的我的能力指的不只仅技术上的,更偏向于项目管理,业务理解,团队合做,沟通反馈等。
除了这些考察点,堂主也分享了政采云内部一系列建设和将来的规划,这也是最吸引我进入政采云的主要理由之一。
这一轮面试个人建议是不要太拘泥,实事求是地反馈以往工做或项目中的一些事情,放开了聊就行。
最后一轮就是 HR 面,主要就是薪资福利等问题,这个我就很少说了,不涉及到技术或项目相关的事情,大多数公司应该都是差很少的。
入职团队后,对政采云团队的第一印象就是年轻有活力,这里大部分都是 90 后,同事之间的关系都比较融洽,都是有话直说,我记得刚进入公司直接遇上了一次团建,让我更快融入了团队。
进入公司后,也有师兄会带着熟悉公司的整个开发流程和业务架构。融入团队后,可以接触到的东西也很是多,除了业务,团队也有很是多的技术建设方向,能够根据本身的爱好参加不一样的技术建设。
通常在别的团队,好比一些大型公司,无法接触到一套完整的开发流程,但在这却能够一块儿参与进去,说实话能学到的东西仍是比较多。团队也有很是多的分享,每周会有同窗进行技术或业务分享,你们也会积极参与讨论。
最后给想要加入政采云团队的同窗们提一些建议。
1.简历建议要用 PDF ,别用 Word,内容突出你关键点,别一味的写会啥啥啥,能够写经过使用什么技术解决了多大的问题,带来什么价值。
2.必要的技术基本功复习,毕竟是靠这个吃饭的,多看多写,能够在面试前将本身认为比较薄弱的知识点再温习一下,尽可能等到温习结束后再进行面试。
3.梳理过去工做中的亮点和成长,这一点要在简历或面试中突出出来,掌握了基础知识只是对一个前端程序员的基本要求,但工做中的亮点和成长是拉开面试者水平的一个重要点。要突出你在工做中的角色和做用。
4.调整好心态,自信阳光一些,没关系张,能给你加分。
政采云前端团队(ZooTeam),一个年轻富有激情和创造力的前端团队,隶属于政采云产品研发部,Base 在风景如画的杭州。团队现有 50 余个前端小伙伴,平均年龄 27 岁,近 3 成是全栈工程师,妥妥的青年风暴团。成员构成既有来自于阿里、网易的“老”兵,也有浙大、中科大、杭电等校的应届新人。团队在平常的业务对接以外,还在物料体系、工程平台、搭建平台、性能体验、云端应用、数据分析及可视化等方向进行技术探索和实战,推进并落地了一系列的内部技术产品,持续探索前端技术体系的新边界。
若是你想改变一直被事折腾,但愿开始能折腾事;若是你想改变一直被告诫须要多些想法,却无从破局;若是你想改变你有能力去作成那个结果,却不须要你;若是你想改变你想作成的事须要一个团队去支撑,但没你带人的位置;若是你想改变既定的节奏,将会是“5 年工做时间 3 年工做经验”;若是你想改变原本悟性不错,但老是有那一层窗户纸的模糊… 若是你相信相信的力量,相信平凡人能成就非凡事,相信能遇到更好的本身。若是你但愿参与到随着业务腾飞的过程,亲手推进一个有着深刻的业务理解、完善的技术体系、技术创造价值、影响力外溢的前端团队的成长历程,我以为咱们该聊聊。任什么时候间,等着你写点什么,发给 ZooTeam@cai-inc.com