前端工程师面试利器!助你在前端求职竞争中脱颖而出

在 ECMScript 的标准化演进和开源社区的蓬勃发展中,作为一名前端工程师,如何从越来越饱和的求职市场竞争中脱颖而出?如何融入环境胜任新的岗位?又该如何晋级成长,完成角色转型?

与你分享前端工程师的面试、岗位适应、晋级成长三大话题和完整职业成长历程。既有提纲挈领的方法论,也会推荐一些实用的学习资料、工具和方法,让你读完就能实践落地。

这些面试利器,助你在前端求职竞争中脱颖而出

1. 面试流程

下面是一份常规的面试流程,不同的公司和团队会有所差异。


面试的第一关一般是笔试。 每个公司和团队使用的技术栈差别比较大,为了有效筛选候选人,笔试普遍以考察基础知识为主,重点是 JavaScript、CSS和 HTTP 基础。形式上纸笔笔试更多些,机试较少,时间大概有 20~40 分钟。除非你的答题特别差,笔试通常不会刷人。

接下来是技术一面。 面试官主要是一线开发的领头羊,他会针对你的笔试和简历进行延伸考察,包括以往项目的具体细节,重点技术栈的使用经验和技术深度等。如果你在笔试中的某道题答得有欠缺,他也可能会给你一些提示,看你能否纠正。

技术二面的面试官通常是组长 ,工作经验丰富,涉及的技术面更广。团队里涉及的项目很多,因此组长对团队的各个技术方向掌握会更全面,所以可能会考察一些比较发散性的问题,重点是观察你的技术功底和潜力。

面试淘汰率最高的往往是技术一面和二面 。所以一定要做基础复习和项目整理,准备充分。

然后是管理面试 ,由团队负责人或更高层次的管理者进行,考核候选人的沟通和应变能力,保证候选人在沟通协作上能与团队匹配,提高团队整体效率。

最后是HR面 ,考察候选人的换工作动机、诚信度,当然最主要还是薪资预期。大家在换工作时一定要合理预期,总想薪资Double是不现实的。

2. 如何准备笔试?

首先,建议通过快速翻阅基础类的书籍做思维导图、系统性地复习,以保证知识体系的连贯性。比起网上的碎片化文章,书籍更有助于搭建整个知识体系的初步结构。下面推荐一些 前端基础类书籍:

JavaScript 类书籍: 《JavaScript 高级程序设计》、《深入理解 ES6》, 作者:尼古拉斯·扎卡斯;

CSS 类书籍: 《精通 CSS 高级 Web 标准解决方案》、《CSS 揭秘》;

HTTP 类书籍: 《图解 HTTP》。

其次,建议大家针对性地多做一些纸笔练习,以避免由于基本功不扎实或者粗心大意,在纸笔笔试环节漏洞百出,错失了 offer。

大家日常开发都是用编辑器或是 IDE,有语法高亮和自动提示,但是实际笔试往往都是写字,许多候选人在答笔试时表现得很生涩。以下纸笔笔试的常见错误,供你自行查漏补缺,提前防范:

1) 没有过滤 hash 值

存在两种原因:一种是对整个 URL 的组成缺乏足够的了解,原理知识相对欠缺;一种是没有把 hash 值考虑进去,太轻敌。

2) 使用字符串函数截断处理

实现对字符串的解析,可以通过 split 拆分,也可以通过 slice、substring 函数处理。但问题在于大家的理解有偏差,经常弄错这些函数的参数含义。

3) 没有 decodeComponent

URL 里的信息是已经编码的,解析时需要 decode,但这方面经常被忽视。

4) 没有 return

  1. 如何梳理个人经历和知识体系,游刃有余地应对面试?
    前端面试常见的考察点主要有:

1) CSS的Flex布局。

2) Promise :把一个回调函数 Promise 化。候选人常在 Promise 的构造函数上出问题,经常以为它是两个参数。

3) 跨域 :跨域的原因是 CORS 的常见问题。

4) HTTP 中缓存相关的问题。

面试问题的准备以实际工作过的项目梳理为主,简历中罗列的项目应突出重点,不宜过多。 下面首先重点说说项目梳理需要注意的问题。

1) 非业内著名的项目务必添加简介。

说明主要功能、业务类型:不同业务类型的侧重点会有很大不同。

介绍用户群体:To B / To C / 公司内部;一般To B 产品逻辑功能较复杂,To C 产品性能要求较高,内部使用的产品技术相对新颖、前卫。

2) 介绍项目用到的主要技术。

形态:PC / 移动端/小程序,框架:Vue / React。简介和技术要重点突出所面试岗位的过往项目经验,以及项目匹配度。

3)介绍技术难点。

最简单的就是回顾项目代码的提交记录,总结当时出现问题的原因并分析,找出多种解决方法和每种方法的优缺点,以免再次掉入相同的「坑」。

另外,建议大家制作一张知识图谱,对自己的专业技能进行评估。


上图是一些建议罗列的技能点。前端工程师的必备技能点有两个:前端基础 + 熟悉一个 Web 框架。Vue 和 React 在国内都很流行,专注将其中一个框架做深入即可。

最后,作为一个经常帮助团队筛选前端候选人的面试官,我再啰嗦几句面试需要注意的问题。

1) 深度优先。

技术深度比技术广度更占优势。无法通过面试评估的,通常都是因为技术深度不够。所以在专业技能方面要扬长避短。与其打鸡血补短板,不如深耕自己的优势。

举个例子,甲同学 Vue 的技术深度 80 分,React 基本没用过;乙同学 Vue 技术深度 50 分,React 技术深度 50 分。在求职中遇到一个 Vue 要求的岗位,甲更有优势。

2) 有备无患。

简历中的内容,无论是项目还是技术点,务必准备充分。不要将自己不擅长的项目写到简历里,因为一旦出现简历与实际不符,容易引发诚信质疑,难以通过。

3) 温故知新。

面试结束后应尽快对笔试、面试的内容做自我总结,避免在一个地方跌倒两次。

迅速融入新环境,适应新岗位
有一种说法:入职后的第一个月往往是职场人最想离职的阶段。每个人进入新环境都难免会有不适应的地方,或是公司制度,或是团队氛围、工作流程的差异。那么, 作为新人,如何尽快熟悉陌生的职场环境呢?

首先,尽快熟悉团队里的规则。 有的规则是显性的,有些是隐性的,通常隐性规则比显性规则多。

显性规则 :比如公司内的各种明文规定的制度,团队使用的工具,包括版本控制系统、项目管理系统、知识管理系统、缺陷管理系统等。

隐性规则: 多与人沟通,自己梳理总结,包括:团队的核心项目有哪些?主要的技术栈和技术文档是什么?项目参与人员的水平和状况如何?项目潜在哪些问题?

比如上线系统有个歧义操作,老员工普遍都知道,但是如果没有做梳理总结,就容易产生误解、踩雷。

其次,心态上求同存异 ,切忌自以为是。认真阅读工作相关的文档、邮件,及时总结。刚进入新团队容易出现两种心态:从BAT大厂进入中小型团队的同学容易有优越感,不屑于问;从小团队进入大厂的同学容易怯懦,不好意思问,缺少沟通很容易出问题。因此应当保持谦逊,降低姿态,多与人交流沟通,从而快速了解和适应整个环境。

工欲善其事必先利其器:高效工具推荐

1. 沟通效率提升工具

日常工作中,前端同学需要与产品、设计、交互、后端、客户端、测试、运维等多种角色协作。个人的沟通能力对于效率提升非常重要。下面介绍三种可以有效提升沟通效率的工具:

1)线框图

用纸笔画线框交互图,可以很好地与产品、设计和交互团队沟通。

2)流程图

可把复杂的逻辑画成流程图,方便与后端、客户端同学交流逻辑细节,避免理解错误。

3)序列图

序列图可以说是日常沟通的万金油,跟任何一个角色沟通都非常好用。

序列图由两部分组成:生命线和消息,按照时间或交互顺序维度联动。与各个角色沟通遇到歧义或是理解偏差时,序列图可以很好地统一大家的思路,达成最终方案。除了纸笔和白板,也可以用 Visual Paradigm 或 OmniGraffle 等软件制作序列图文档。

2. 日常开发常用工具

1) 抓包软件

花些时间熟悉 Charles 或 Fiddler 等工具的使用:如何本地代理、重写、节流、断点,可以快速定位线上问题,方便与后端、客户端、测试沟通定位问题。

2) 项目管理软件

高级以上的工程师可能涉及带项目,对于任务、资源、时间要有清晰的认识。如 OminiPlan 或 Project 等工具,可以方便快速进行人力和时间分配,追踪进度。

这里推荐一下我的前端学习交流群:767273102,里面都是学习前端的从最基础的HTML+CSS+JS【炫酷特效,游戏,插件封装,设计模式】到移动端HTML5的项目实战的学习资料都有整理,送给每一位前端小伙伴。最新技术,与企业需求同步。好友都在里面学习交流,每天都会有大牛定时讲解前端技术!

点击:前端学习圈

原文地址:https://blog.51cto.com/14284898/2389393

时间: 2024-10-20 10:07:41

前端工程师面试利器!助你在前端求职竞争中脱颖而出的相关文章

为什么前端工程师很难找?(知乎上一个读后蛮有感慨的回答)

知乎用户 IBM CRL,前端田园犬 89 人赞同 因为看到朴灵大神出现在这个帖子所以来写这个答案,首先感谢朴灵大神您写的关于nodejs的书和推荐过的javascript的书,图灵社区的奉献让我受益匪浅.让我这个曾经的菜鸟对js有了重新认识,路漫漫其修远兮,吾将上下而求索. 先说下自己早年的经历吧,最早的时候跟很多现在看到的各种廉价前端程序员一样(如果那算程序员的话),就是写写HTML,CSS,用ps切切图,jquery的API都会调用,会把网上各种插件搬来用.因为我ps用的还可以,又熟悉各类

移动互联的“大熊猫”——优秀前端工程师

相信互联网行业的人一定不陌生"资本寒冬"这个名词,在经历了资本繁荣到资本寒冬阶段,部分实力不强的公司走向崩溃,比如去年曾经火热的O2O接连倒闭,很多盈利模式不清晰,或者烧钱太快又没有及时融到钱的公司也被迫解散.互联网行业的人才市场理所当然的也受到了此风向变化的影响,在供给增加,需求放缓之下,求职者身上的压力越来越重,造成了今年互联网的就业形势没有去年同期好. 前端.后端就业形势不错,移动端工程师压力略大 以下在就业方面分别列出了Java.前端.Android.iOS候选人数与面邀数间的

写给想成为前端工程师的同学们―前端工程师是做什么的?

前端工程师是做什么的? 前端工程师是互联网时代软件产品研发中不可缺少的一种专业研发角色.从狭义上讲,前端工程师使用 HTML.CSS.JavaScript 等专业技能和工具将产品UI设计稿实现成网站产品,涵盖用户PC端.移动端网页,处理视觉和交互问题.从广义上来讲,所有用户终端产品与视觉和交互有关的部分,都是前端工程师的专业领域. 2005年的时候大多数网页长这样: 现在的网页一般是这样的: 前端工程师的发展之路和前景是怎么样的? 前端是一个相对比较新的行业,互联网发展早期(1995年~2005

前端工程师是做什么的?10年开发程序员的总结

前端工程师是 互联网时代软件产品研发中不可缺少的一种专业研发角色. 从狭义上讲,前端工程师使用 HTML.CSS.JavaScript 等专业技能和工具将产品UI设计稿实现成网站产品,涵盖用户PC端.移动端网页,处理视觉和交互问题. 从广义上来讲,所有用户终端产品与视觉和交互有关的 部分,都是前端工程师的专业领域. 2005年的时候大多数网页长这样: 现在的网页一般是这样的: 前端工程师的发展之路和前景是怎么样的? 前端是一个相对比较新的行业,互联网发展早期(1995年~2005年)是没有专业的

前端工程师的价值体现在哪里?

这是一个很老的话题"前端工程师的价值体现在哪里?".有人说:"前端工程师之于网站的价值犹如化妆师之于明星的价值."一位好的Web前端开发工程师在知识体系上既要有广度,又要有深度.当然,Web前端工程师并不是设计师,每天接触最多的是代码,代码,还是代码.对此,你是如何给自己定位的?你的价值是否能够得到很好的体现?如今,旧话重提无非是想与开发者们共同探讨下前端工程师的价值所在,希望对你有所感悟. 一起来看下业内资深大牛对前端工程师是如何评价的: 张克军 - 豆瓣前端工程

什么是前端工程师?前端工程师需要掌握什么技能?

什么是前端工程师?前端工程师需要掌握什么技能? 前言 前端工程师是一个出现了10年左右,而颇受重视则是最近这五六年的事情.受到重视到前端从业人员井喷,也就是这一两年而已.因为前端工程师这个职位出现得太晚,导致各大学校均没有系统的相关教学,我们所熟知的各个大牛均是自我研究自我学习的.而随着google推出v8引擎以来,尤其是gmail对ajax的应用,再随着jquery的出现,解决了各大浏览器的兼容问题,而nodejs则将js推向服务器端,javascript从一个边角料的语言变成了一个性能强劲,

前端工程师说明(仅以自勉)

现在,一位合格的前端工程师,必须对视觉设计有兴趣. 很显然,要处理大量的Web应用程序需求,技术任务就要进行分类,以便于多人同时处理网站请求.事实上,现在已经不可能一个人快速地解决所有的技术细节了. 1.前端的误解 大多人都认为前端开发是一个[相对于其他模块来说更简单的领域],在他们心中的前端工程师是这样工作的的: 1.把Photoshop文件.图片或者线框放进一个网页: 2.偶尔设计Photoshop文件.图片或者线框: 3.用JS编程,为网页制作动画.过渡效果: 4.用HTML和CSS编程,

如何成为一名优秀的web前端工程师(前端攻城师)?

我所遇到的前端程序员分两种: 第一种一直在问:如何学习前端? 第二种总说:前端很简单,就那么一点东西. 我从没有听到有人问:如何做一名优秀.甚至卓越的WEB前端工程师. 何为:前端工程师? 前端工程师,也叫Web前端开发工程师.他是随着web发展,细分出来的行业. Web前端开发技术主要包括三个要素:HTML.CSS和JavaScript! 它要求前端开发工程师不仅要掌握基本的Web前端开发技术,网站性能优化.SEO和服务器端的基础知识,而且要学会运用各种工具进行辅助开发以及理论层面的知识,包括

div+css的前端工程师的价值体现在哪些方面?

个人认为前端工程师正慢慢演变为产品工程师.wap app, 响应性UI等以html5技术为基础的开发将成为前端工程师的主要工作内容,解决产品跨平台跨设备的实现问题.Javascript, HTML, CSS这些前端工程师熟悉的,多年使用的语言,作为开放标准将被各种平台所支持.产品形态和数据的分离是形势所趋.移动时代对产品形态多元化的要求虽然可以靠不同技术分别实现,但要付出巨大的成本.这也是html5这个04年就提出来的标准,直到前两年才火爆的原因. 现阶段的价值也很大.web产品交互越来越复杂,