这里分享一下我在面试过程当中常问的一些问题(不少问题不只限于前端开发),注意不少问题都是开放的,做为一个面试官,不要试图准备几个选择题或填空题应付了事,面试不一样与笔试,面试就是要以交流为主,互动讨论老是要比直接的答案更能体现此人的能力。前端
我我的认为,任什么时候候,考察一个应聘者,综合素质要优先于他的技术能力,作开发不是作航天飞船,通常智商不低的人经过学习均可以胜任大部分工做,关键的是人品、工做态度、分析能力、学习能力,这些都是与生俱来或潜移默化造成的,是很难经过学习得到的,它们要比现有的技术经验和技术能力更重要。面试
今每天气还不错,你是怎么过来的?ajax
大概用了多久,离得远么?跨域
(若是远的话)是本身的房子仍是租的房子?常常这样远距离上班能够适应么?浏览器
缓解一下应聘者的紧张感,让他尽快进入状态,并能了解出行方式、大概的远近。有时候工做地点远近还真是大问题,即便应聘者能够接受,可是上班时间超过1个半小时的员工幸福感和工做效率会较低,流失率会比较高。闭包
(用3分钟时间)简单作个自我介绍吧?框架
自我介绍是关键的环节,连自我介绍都说很差,说明对待面试和职业的态度不好。能够加上时间限制,或者让应聘者自由发挥,看看他把握重点的能力和控制时间的能力。自我介绍通常来讲应该包含年龄,籍贯,毕业院校、专业和时间,工做过的公司和时间,主要的项目,担当的职务,用到的技术,擅长的技术等。函数
详细介绍一个对你影响比较大的项目?工具
对于你刚才说的xxx项目,我很感兴趣,你能详细说一说么?学习
这个项目主要是 解决什么问题/完成什么事情?
你在这个项目里 的职责是什么/作了哪些事情?
这个项目用到了那些 技术/框架?
这个项目中你们是怎样协做的?
这个项目主要的挑战是什么?
这个项目遇到了哪些技术难点和问题?
你是怎样解决的?
你以为本身的解决方案还有改进的地方么?
这个项目中你学到了哪些?
针对某个(或某两个,不要多)项目进行深刻的提问,首先考察项目的真实性(有的应聘者编造简历,或者真假混合,好比把其余人作的事情说是本身作的,经过一系列提问,并在提问中抓住感兴趣的点追问,能够很容易识别简历造假),还能够考察组织表达能力、技术能力、沟通协调能力、总结能力、攻关能力、学习能力等多方面能力。
为何要离开上一家公司?
哪方面因素制约了你的发展?
你有没有尝试去解决?
若是你是老板,你会怎样作?
通常人都会回答发展、薪资、出差、离家远、加班等缘由。对于这些缘由必定要追问,好比你认为哪方面因素制约了你的发展?你有没有尝试去解决?每一个公司都有好的和很差的方面,能从大局考虑,看到问题并提出解决方案的应聘者加分,而一味抱怨、不去解决的,永远是出现困难第一个离开公司的人。
我看你简历上写了很多的技术点,你最熟悉的是哪些?
能说说你对xx技术的理解么?
你最近在关注哪些技术?
平时喜欢玩点什么技术?
为何要 关注/学习 这些技术?
好的技术人员,听到问起技术会两眼放光,尤为是本身擅长的技术,很但愿能表达出来。不少东西在简历里体现不出来,须要不断的挖掘。若是没有兴趣也没有自信的话,要么就是特别内向低调,要么就是技术水平不行。
你喜欢什么样的开发环境?
你喜欢用什么操做系统、IDE、浏览器、调试工具、版本管理工具...?
对于工具和环境的选择能够看出应聘者的技术倾向和品位。
doctype有什么做用?
HTML5有哪些新增的特性是你很感兴趣的?
浏览器标准模式和怪异模式之间的区别是什么?是如何触发的?
HTTP协议是无状态协议,怎么理解?
GET和POST请求有什么区别?
IE6有哪些兼容性问题?
解释下 CSS sprites?
使用 CSS 预处理器(如Less、Sass)的优缺点有哪些?
CSS选择器的优先级如何?
display都有哪些值,他们有什么区别?
响应式设计和自适应设计有什么不一样?
有没有兼容retina屏幕的经历?
什么是闭包?
什么是事件代理?
解释一下原型继承?
什么是当即调用函数表达式?
如何使用原生js实现ajax请求?
如何实现跨域?
解释一下AMD或CMD?
问一些HTML、CSS、JS的基础知识,这些问题很是多,就不一一例举了。注意根据应聘者的技能状况提问,并根据他的回答进一步深刻的挖掘。在应聘者不熟悉或断片的时候,能够给与善意的引导和提示。
若是让你作一个移动展现页面,能够上下滑动翻页并有动画效果的,你如何入手?
若是有一个网站访问很慢,你如何解决?
若是让你写一个 弹出窗/幻灯图片展现/tab页... 插件,你如何实现?
为何利用多个域名来提供网站资源会更有效?
从输入 URL 到页面加载完成的过程当中都发生了什么事情?
什么是渐进加强和优雅降级?
问一些综合性问题,注意考察应聘者知识的广度和深度。仍是那句话,根据应聘者的技能状况提问,并根据他的回答进一步深刻的挖掘。
若是今年你打算熟练掌握一项新技术,那会是什么?
你编写过的最酷的或最有成就感的代码是什么?
你会业余作一些项目么?作过什么?
你喜欢创业么?你以为如今哪些方向比较火,你有什么见解?
在技术问题事后,问一些发散性的轻松有趣的问题。
你以为你和其余前端开发相比,有哪些 优点/劣势?
你将来3-5年有什么规划?
你对咱们公司有什么了解?为何有兴趣来咱们公司?
了解应聘者优劣势和职业规划,看看是否是和公司的文化符合。
你有什么 想了解的/想问个人 问题么?
收尾问题,精明的应聘者应该在这个环节了解一下公司的产品、技术团队现状、使用的技术等等,并在其中找到和本身的切合点,表示出能够胜任和对职位的期待等,就不展开了。
一个优秀的面试官,应该对上面以及其余各方面的考察要点了然于胸,最后作到为所欲为,无招胜有招。
他和应聘者像是朋友,两我的就像平常聊天同样,行云流水,从看似不经意的、天然而然的问答中,提取出本身须要的信息,这也是对应聘者的尊重。
最后但愿每一个公司顺利找到合适的前端开发,每一个前端开发都能拿offer拿到手软 :)