第 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面
最后一轮就是 HR 面,主要就是薪资福利等问题,这个我就不多说了,不涉及到技术或项目相关的事情,大多数公司应该都是差不多的。
我对政采云的印象
入职团队后,对政采云团队的第一印象就是年轻有活力,这里大部分都是 90 后,同事之间的关系都比较融洽,都是有话直说,我记得刚进入公司直接赶上了一次团建,让我更快融入了团队。
进入公司后,也有师兄会带着熟悉公司的整个开发流程和业务架构。融入团队后,能够接触到的东西也非常多,除了业务,团队也有非常多的技术建设方向,可以根据自己的爱好参加不同的技术建设。
一般在别的团队,比如一些大型公司,没法接触到一套完整的开发流程,但在这却可以一起参与进去,说实话能学到的东西还是比较多。团队也有非常多的分享,每周会有同学进行技术或业务分享,大家也会积极参与讨论。
我的个人建议
最后给想要加入政采云团队的同学们提一些建议。
1.简历建议要用 PDF ,别用 Word,内容突出你关键点,别一味的写会啥啥啥,可以写通过使用什么技术解决了多大的问题,带来什么价值。
2.必要的技术基本功复习,毕竟是靠这个吃饭的,多看多写,可以在面试前将自己认为比较薄弱的知识点再温习一下,尽量等到温习结束后再进行面试。
3.梳理过去工作中的亮点和成长,这一点要在简历或面试中突出出来,掌握了基础知识只是对一个前端程序员的基本要求,但工作中的亮点和成长是拉开面试者水平的一个重要点。要突出你在工作中的角色和作用。
4.调整好心态,自信阳光一些,不要紧张,能给你加分。
招贤纳士
政采云前端团队(ZooTeam),一个年轻富有激情和创造力的前端团队,隶属于政采云产品研发部,Base 在风景如画的杭州。团队现有 50 余个前端小伙伴,平均年龄 27 岁,近 3 成是全栈工程师,妥妥的青年风暴团。成员构成既有来自于阿里、网易的“老”兵,也有浙大、中科大、杭电等校的应届新人。团队在日常的业务对接之外,还在物料体系、工程平台、搭建平台、性能体验、云端应用、数据分析及可视化等方向进行技术探索和实战,推动并落地了一系列的内部技术产品,持续探索前端技术体系的新边界。
如果你想改变一直被事折腾,希望开始能折腾事;如果你想改变一直被告诫需要多些想法,却无从破局;如果你想改变你有能力去做成那个结果,却不需要你;如果你想改变你想做成的事需要一个团队去支撑,但没你带人的位置;如果你想改变既定的节奏,将会是“5 年工作时间 3 年工作经验”;如果你想改变本来悟性不错,但总是有那一层窗户纸的模糊… 如果你相信相信的力量,相信平凡人能成就非凡事,相信能遇到更好的自己。如果你希望参与到随着业务腾飞的过程,亲手推动一个有着深入的业务理解、完善的技术体系、技术创造价值、影响力外溢的前端团队的成长历程,我觉得我们该聊聊。任何时间,等着你写点什么,发给 ZooTeam@cai-inc.com
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。