fex-team/interview-questions
注意
目前发现有其他人以 FEX 团队名义进行招聘,发出的邮箱皆为私人邮箱。
为防止在投递简历出现误会,在此提醒各位注意:
FEX 团队没有以任何「个人名义或邮箱」进行招聘。
所有简历都以投递到 fex-hr@baidu.com 为准。
FEX 的面试过程
我们一般会有 3 轮面试,对于高级别的工程师可能会有 4-5 轮面试。
我们可能会采用哪些方法来面试
代码编写笔试
问答式
过程遵循 STAR 面试法 。
我们喜欢什么样的面试者
基础扎实
从多年的经验看,那些发展好的同学都具备扎实的基础知识
比如只懂 jQuery 不懂 JavaScript 是不行的哦
如果了解计算机基础会更好,因为我们将面临很多非前端技术的问题
主动思考
被动完成任务的同学在这里进步会很慢
你需要有自己的想法,而不是仅仅完成任务
爱学习
前端领域知识淘汰速度很快,所以最好能经常学习和接触新东西
有深度
遇到问题时多研究背后深层次的原因,而不是想办法先绕过去
比如追踪某个 Bug 一直了解它本质的原因
有视野
创新往往来自于不同学科的交集,如果你了解的领域越多,就越有可能有新想法
我们喜欢问的问题
以下会列出一些我们常问的问题,请提前做好准备。
需要注意的是,校招和社招的是不一样的,校招会更加关注基础知识,而社招会更加关注之前做过的项目情况。
项目相关
面试其实说白了就是根据一个人之前的经历,来判断出后续这人会做得怎样,如果你之前从没做成过一件事情,凭什么让别人相信你之后能做成呢?因此无论哪里的面试都会问你之前做过的项目
项目可以是多人协助开发一个产品,也可以是自己个人做过的业余应用,只需介绍 1、2 个就够了,需要注意的是 1 + 1 != 2,做了两个平庸的项目不如做了一个好项目
一般来说会问如下几方面的问题:
做过最满意的项目是什么?
项目背景
为什么要做这件事情?
最终达到什么效果?
你处于什么样的角色,起到了什么方面的作用?
在项目中遇到什么技术问题?具体是如何解决的?
如果再做这个项目,你会在哪些方面进行改善?
技术相关 – 1 面
技术一面主要判断对基础知识的掌握
描述一个你遇到过的技术问题,你是如何解决的?
这个问题很常见,有没有遇到过很不常见的问题?比如在网上根本搜不到解决方法的?
是否有设计过通用的组件?
请设计一个 Dialog(弹出层) / Suggestion(自动完成) / Slider(图片轮播) 等组件
你会提供什么接口?
调用过程是怎样的?可能会遇到什么细节问题?
更细节的问题推荐参考 https://github.com/darcyclark…
技术相关 – 2 面
技术二面主要判断技术深度及广度
你最擅长的技术是什么?
你觉得你在这个技术上的水平到什么程度了?你觉得最高级别应该是怎样的?
浏览器及性能
一个页面从输入 URL 到页面加载完的过程中都发生了什么事情?越详细越好
(这个问既考察技术深度又考察技术广度,其实要答好是相当难的,注意越详细越好)
谈一下你所知道的页面性能优化方法?
这些优化方法背后的原理是什么?
除了这些常规的,你还了解什么最新的方法么?
如何分析页面性能?
其它
除了前端以外还了解什么其它技术么?
对计算机基础的了解情况,比如常见数据结构、编译原理等
兴趣相关
最近在学什么?接下来半年你打算学习什么?
做什么方面的事情最让你有成就感?需求设计?规划?具体开发?
后续想做什么?3 年后你希望自己是什么水平?
主动性相关
FEX 和很多其它团队不一样,我们没有 PM 天天跟在你后面催你做事情,所以你需要自主去发现和解决问题,主动性是我们最看重的软素质之一
在之前做过的项目中,有没有什么功能或改进点是由你提出来的?
是否有参与和改进其它开源项目
FAQ
公开面试题不怕面试者精心准备么?
面试题大多是开放性问题,是无法准备的
如果真的精心准备,在各方面都能答好,那说明做事态度认真且努力,这正是我们需要的品质,因为我们相信一个人不是一成不变的,可以不断学习和进步,只要 ta 肯努力
我只会 CSS/HTML,或只会 JavaScript,可以么?
不行,而且很多内部项目还需要用 PHP
如果投递简历后 2 周都没面试消息,意味着没筛选通过么?
首先,你确定简历提交到的是「Web 前端研发部」,而且我们正在招聘
如果符合前面的条件,很遗憾,或许是我们招满了,或许是你暂时不适合我们部门,但这不意味着你不能改进,请继续努力
如果面试不过,可以提供后续发展建议么?
可以,请发邮件到 fex-hr@baidu.com 咨询,我们会尽量抽时间回复,但不能保证回复所有人
有疑问如何咨询?
可以在这个项目中提 Issues,或发邮件到 fex-hr@baidu.com 上