前端工程师面试准备
从 MVC 到 MVVM,从页面到工程化,从浏览器到全端应用,前端技术近几年来保持着极高的发展速度,应用场景不断拓展,前端技术能够满足的需求越来越多,前端岗位的数量也不断增长,前端工程师的薪资待遇稳步提升,发展前景十分广阔。
如何积累前端经验
前端的知识更新速度就像它的发展一样快,选择前端,意味着需要不断学习,良好的自学能力和习惯,也许并不能使你飞到最高,但一定能让你飞得更远更长久。
经验积累是一个长期的过程,加快过程的方法有二:
-
主业之余,投入时间关注,学习和实践新旧技术
- 每天做完力扣的每日一题,保持清晰的逻辑思维能力以及做题的手感。
- 每周看完一本 LeetBook,用最少几小时的时间学会一个前端岗位需求技能。
-
主动发现、分析和解决项目问题,在过程中获得与项目关联的知识和经验增长。
两种方法没有优劣之分,但是需要注意的是:
- 前者应警惕虚假努力,不要疲劳战以至于影响主业,多以学会多少而不是时间长短来衡量收获,适当给自己放松、减压。
- 后者能让自己从学业或工作中收获更多经验,但要注意时间、协作和优先级,时刻注意截止日期,不要过早优化,不要占用同学或同事的时间陪自己搜索和试验。提前调查,给出原因、结论和方案供大家讨论,是对团队的时间和效率负责任的表现。
此外,勇于承担管理或者培训的角色,能够让我们从新的角度来看待前端工作。并不是所有人都具有领导力,但是如果公司或团队有意提供这样的角色,请无需担心技术不够,技术、管理、协作等都是前端岗位的需求点,它们部分重叠又相互独立,主动迈出第一步就是成功的一半。不在管理岗位也可以练习管理,小到管理时间、金钱,大到尝试影响和说服他人,尝试优化项目,改进流程等。多尝试做原来领导会做的事情,在这个过程中,锻炼和认识自己,积累管理经验。
也许项目的代码正让你头疼,也许公司的管理正让你委屈,也许重复的生活正让你迷茫,也许长期的重担正让你厌倦,也许身心的疲惫正让你失望。很抱歉,曾经喜欢前端的你,有时会遭遇非技术的压力。请尝试拾起好奇心和热情,主动“优化”环境、生活和人际关系,在忍受和思考中发现“原理”,找到并复制更优“模式”,在“实现”最佳实践中,完成量变到质变的积累。
综上,可以很容易地把如何积累前端经验总结成脑图:
如何应对前端面试
首先,明确寻找工作的动机、目标,如果已经在职,需要权衡离职带来的风险和收益,尽量不要裸辞准备面试,原因是:
- 背景调查的流程和时间可能会延长。裸辞有的公司会先背调,再入职,在职为避免立即联系候选人在职的公司,可能会先给
Offer,再背调。这不是一定的,只是具有参考意义。 - 需要提供的证明可能会变多。比如有的公司会要求裸辞候选人提供工资流水、社保记录。
- 离职原因很可能会成为面试关注的重点之一。是不是被动离职,为什么要冒中断社保、经济来源的风险?
- 社保、经济来源可能中断、生活节奏不适应、求职不顺利、社交需求等长期可能会给候选人产生压力。
其次,一定要先准备,再去面试,缺少准备,会导致:
- 理论知识遗忘,不准确,回答问题或者交流项目,答不到技术点和得分关键词上;
- 算法和数据结构、编程题不会做,不会说,或者有印象,写不出;
- 原理及实现答不出,或者答得太浅,只知道怎么用;
- 回答受限于项目和技术栈,缺少广度和深度,岗位要求的某领域遗忘或没接触过;
- 想到哪里说到哪里,回答没有逻辑,不连贯,缺少联系、一致和条理性。
部分面试官能够辨别候选人的不佳表现是因为紧张、缺乏准备所致,少数面试官会尝试通过引导、鼓励、开玩笑、更换环境、变换候选人熟悉的话题等方式来继续探测候选人的真实能力边界。即便如此,含糊不清、缺少技术表述,逻辑混乱的答案依然会负面影响面试结果。
紧张是很多候选人都有的情绪。在回答不上来或者面试官给予了负面反馈时,例如被频繁打断、质疑,部分候选人会焦虑,头脑空白。也有候选人不适应在别人的关注下做题,不善于表达。
所以,在准备面试时,我们可以根据前端学习路线、心仪岗位要求、结合自身实际,搭建自己的技术栈框架,回答 《前端通关手册》 、《面试突击》 系列的 LeetBook 里,已经按知识点分好类的面试题,将查漏补缺到的知识点,按分类挂载到自己的技术栈框架上。面试时,在框架中搜索,总能找到可以回答的内容,至少可以避免无话可说,回答也会尽可能地靠近正确答案。
对于害怕线上编程的候选人,推荐使用力扣的模拟面试功能,从大厂原题中抽取题目,模拟真实面试流程和情景。可以让我们更好地控制时间和情绪,提升面试中对不通过情况的调试和处理能力。最好可以边做边说,讲讲思路、复杂度,用到的数据结构、算法和技术点等。习惯后,真实面试只是换了题目和听众,自然会更从容。
最后,临场表现可以大方有礼,重视细节,但是不纠结于结果:
- 面试前:打印多份简历,着装勿太休闲,口、身上无气味,早 30 分钟到,赶时间不要拼车;
- 面试中:语速不要快,声音大,突出技术关键词,多看面试官,不会的跳过,不要卡在上面;
- 面试后:感谢面试官并握手,不评论公司和他人,心仪岗位 3 天后,可以主动询问结果。
综上,可以很容易地把如何应对前端面试总结成脑图:
前端面试流程形式
当与公司约定好了面试时间,建议候选人至少提前 30 分钟到达现场,原因是:
- 有的公司会要求填写候选人到场填写个人信息或者职位申请表,需要时间;
- 有的公司有多轮面试,面试官时间安排紧凑,提前到,有机会一次性面完;
- 有的公司地图标注不准确或者没沟通好,来错地方,需要有时间打车更正。
前端面试流程,根据公司属性,通常分为三种情况:
- 国内公司,多先技术面,再人力面,部分公司喜欢在技术面前添加笔试题或机试题。
- 机试题通常时间够用,笔试题可以只写技术点,未约定时间时,控制在 30 分钟完成。
- 技术面的一面往往是你未来的同事、组长或者直属领导。
- 二面及以上通常是更高一级的领导或者别的部门的同事交叉面试。
- 技术面通常会评级,有的公司会设置专门的技术评定考试,结果影响职级和薪资区间。
- 人力面通常会关注候选人的离职原因,职业规划,向候选人核实简历中发现的问题。
- 通常,当 HR 开始向你介绍公司文化、询问你当前薪资和期望薪资、最快入职时间,都是代表面试可能已经当场通过。
- 如果期望薪资超过了评级、涨幅超过 HR 权限等,能力和经历经询问依然存疑,或者需要继续与其他候选人对比,那么通常会给候选人等待的时间范围。
- 多数公司的谈薪是一个独立流程,HR 会向候选人详细介绍薪酬、奖金、福利、晋升路线和通道,有时也希望降低候选人的期望,来达成录用。
- 外资公司,多先人力面,再技术面,最后人力面。比国内公司多的第一场人力面,主要采用电话或现场简单聊天的方式,对候选人进行初步了解。这个阶段
HR 的问题,很可能会包含最核心的岗位要求,例如某个不可或缺的技术栈、相关领域经验,稳定性要求等。 - 部分公司,多为大厂,候选人会接到技术电话面,这是初步了解,解答面试官关键疑问的途径,具有初筛意义。通常,电话面及其它前置考核通过后,才会进入到公司的面试流程。所以,接到电话不必紧张,如果不方便,一定要在电话中另行约定时间,避免错过机会。
面试,主要是语言沟通,对表达能力不太自信的候选人,可以准备纸笔或电脑,在征得面试官同意的前提下,用你的架构图、时序图、流程图、代码、文档和项目来补充回答,可以给面试官留下更完整的印象,尽可能地多展现真实水平。