最近一直在忙着各种面试,也算是有些经验,总结一下。
来北京之前面了两家,在北京面了三家,反馈都还不错。最大的体会就是,技术这一块还是要来北京工作,二三线城市的技术发展还是很不完善的。
先说简历,这个知乎上有很多写的不错的文章可以去搜一下,下面简单写一下注意点。
- 要明确的标出工作年限,这一点很重要,很多人的简历筛选不到这几个关键字。
- 项目经验在精而不在多,一定要把简历上的每一个项目详细的描述,要包括项目的功能、项目描述、自己负责的工作等等。
- 还有简历的篇幅,尽量不要加封面,简历最好一页最多两页再多就没有必要了。
- 根据你要投的公司去写你的简历,要准备有不同侧重点的简历。
简历最好还是不要海投(视情况),找几家自己看着不错的公司针对性的投一下,去之前对公司做一些了解会加分,如果你能针对他们的招聘信息对自己做一些规划那就能表现出很大的诚意了,一定会被优先考虑。
一般正规的面试都会分好几面,但是小公司很可能只有技术和你聊一聊,连 hr 都见不到,所以有机会还是去规模大一点的公司面试,试一下。
聊一下我的面试经历吧
- 电话面试 1
先是自我介绍,然后面试官没有任何提问。这个时候如果你不说点什么就有点尴尬了,所以一定要提前准备能独自表演一个小时以上的一篇面试稿。其中可以说你学习前端的一些经历,之前做过的项目什么的,因为很可能对方也不知道要问你什么。我这时候选择说我的项目经历,在我独自表演的过程中面试官根据描述问了很多针对性的问题。当时的面试没有问到具体技术相关的知识,聊了有一个小时,基本上都是我在说,所以提前准备是很重要的。整体面试很不错,可惜当时还没来北京,近期不能去公司面试,等我一个月后来北京的时候公司已经招到人了。。。
你说你平时喜欢做一些微动画加强用户体验,比如说有哪些?(所以说不要给自己挖太大的坑)
项目中你遇到过哪些问题,你是怎么解决的?(这个问题几乎都会问到)
如果给你一个项目,你会怎么去搭建他,会考虑什么问题?
- 电话面试 2
还是简单的自我介绍,然后直接步入正题,问了很多 JS 基础的知识,面试官问的很快基本上没有多少思考的时间,如果你对这块的知识没有了解很容易卡住。
如何查看一个对象的属性是继承来的还是他自己的?
说一下你了解的 ES6 的 Api ?
纯 CSS 如何实现宽度自适应,高度成比例,比如一个正方形?(这个问题当时一脸懵逼,但是就算你不会,错误的也要继续说下去,这个时候要表现的就是你思考问题的一个思路了。后来下去自己思考了一下,发现纯 CSS 还是可以实现的)
因为我上一个问题卡住了,所以他追问,为什么要用纯 CSS 而不是用 JS 呢?
做项目中遇到的比较深刻的问题,你是怎么解决的,思路是什么?(总结很重要)
new 和普通的 function 的区别?
apply 作用?
- 面试 1 (小规模公司 - 20人+)
整个面试很不成功,只有一个技术人员对我面试。虽然这是我人生中第一次面试,但是我还是能感觉到面试官很不专业。我在简历中写到的熟练的知识点一个都没有问,反而是抓着我了解这一模块的知识点对我追问。最后面了不到20分钟就结束了,让我回去等结果,说 hr 那边他去聊工资(一脸懵逼)。。。下午收到电话,说面试过了,让我明天带着自己的电脑去公司试岗5到6天,根据我的具体操作给工资。也是刷新了我的三观,果断拒了。
这个面试,面试官对我的评价就是学的东西比较杂,范围广。
自我介绍 ?
H5 有哪些 ?C3 有哪些?
响应式怎么实现 ?
NodeJs 了解多少 ?
ES6 了解多少?
小程序了解多少?
小程序怎么直接操作 DOM?(我小程序写的是了解啊。。而且我后来查了一下,小程序没有类似 Vue 和 React 使用 ref 操作 DOM 的方法。)
小程序和普通 JS 的区别是什么?写法有什么区别?(。。。)
- 面试 2 (公司规模还好 100+)
去了先做一份面试题,有差不多20道题,给了一张白纸,我当时一脸懵逼啊,这怎么写得下?一道题就要半页的好吧。。。面试题写了有1个小时多,写了三页。然后让我等着,把面试题答案给他们的项目经理看,然后又等了半个小时。接下来他们的人事主管和我聊,对我认真这一块比较看重,他们以前面试从来没有人面试题写三页的。。。然后就是和项目经理聊,这一块就是打压你,问到你怀疑人生,觉得自己前端的知识白学了。然后人事又来和我谈,介绍公司,对我的发展有什么好处,工资多少等等。整个面试有3个多小时的时间,当时我说明天给公司回复,考虑了一下第二天也拒了。
面试完公司看重的地方是认真负责,基础比较扎实。以前的项目比较简单,所以经验不足。
其中的一部分笔试题
H5?
XHTML 和 HTML 区别?
语义化?
行内,块级元素?
C3?
了解的CSS浏览器兼容?
CSS引入的方式?@import 和 link 的区别?
盒子模型?
如何居中浮动元素?
position 的值,区别?
DOM 模型?BOM 模型?
jQuery 的 ready 和 window.onload 的区别?
二维数组?
正则表达式,电话号码?
ajax ,异步同步?
IE 和 FF 的 JS 兼容?
5年内职业规划?
前端优化知识?
一个大型网站如何管理图片等静态资源?
对前端这个行业看法如何?
面试
自我介绍?
项目经验描述?
Vue 的原理?
- 面试 3 (小规模公司 20+)
这个面试也比较懵逼啊。一个技术来面我,问了一些比较浅的问题,面完后也是告诉我,他和 hr 聊工资没我什么事。当时面了15分钟就完了,问的问题比较简单,感觉回答的很不错。然后就没有下文,完全不知道自己被刷在哪。
自我介绍?项目经验描述?
为什么来北京?为什么离开前一家公司?
对自己三年内的职业规划?
JS 原型链?
ES6?
H5,C3?
Vue ?
- 面试 4 (规模不错的公司 500+)
这个面试比较正规,分四面。对你的整个知识体系和能力都能做完善的评估。一面和二面是偏技术的,问了很多底层的知识,完全被问懵逼了,有一半的问题都回答不上来。在我以为没下文的时候 CTO 进来了,问了一些偏广度的问题,最后是 hr 来聊福利,聊薪酬,问问你对公司的看法之类的。这个面试面了有将近5个小时,最后6:30太晚了,留了电话后面继续聊工资。整体感觉面试很正规,能把你知识的深度和广度都了解到。
一面
自我介绍?项目描述?(功能就这些?就是一个简单的项目是吧?。。。)
H5,C3?
ES6?问了一些 promise 的问题,给了一些代码让你分析流程。
事件的冒泡和捕获?同时在一组 DOM 上绑定冒泡和捕获的事件,他该怎么触发?(问到前面我一脸窃喜,后面的问题一脸懵逼)
Vue 原理?
跨域方案?什么是跨域?
平时怎么学框架或者前端知识?在哪些途径学?
然后问了一些代码题,分析结果,流程。
现场编译,用 setTimeout 实现定时触发 setInterval (arguments.callee,还有严格模式下实现)
二面
自我介绍?项目经验描述?
Vue 原理?
MobX 和 VueX 是什么原理?怎么实现的?其中的 Store 是什么?
自己用 webpack 搭建 Vue 项目,而不是用 vue-cli 怎么搭建?webpack 配置?
如何规划一个项目?
然后出了四道面试题让我写一下,半小时时间。尴尬。。只写出来两道。。
三面
自我介绍?项目经验描述?
对 NodeJs 有了解?使用 NodeJs 遇到的问题,数据库操作?
你是自学前端?那平时是如何学习前端的?
你觉得自己的学习能力怎么样?
为什么年前来北京,而不是年后拿了年终奖再来?
对 Vue 和 React 的看法?
为什么要使用 TypeScript ,有什么好处?
问了一些 React Native 方面的东西
近三年的自我规划,有没有考虑架构、管理转型?
四面
就是 hr 和你聊工资福利,对公司的看法怎么样。学的框架和公司的不一样你是怎么考虑的之类的。
- 面试 5 (小规模公司 20+)
上面的第二个电话面试。
公司整体团队不大,但是技术方面的团队比较不错。面试去了写一份面试题,然后分两个负责人面试。最后聊的还不错,但是我去那天公司已经招到人了。问我有没有全栈的想法,我个人的话全栈还是考虑 NodeJs 但是公司要用 Java,问我有没有学的打算,最后留了联系方式后面聊。一天以后负责人联系我,说公司考虑业务方面的扩展,要再招一个前端,但是我当时已经打算进一家公司就拒了。
整体面试官的评价还是基础比较好但是项目经验不足。
面试题是我在 GitHub 上看到的一份面试题,所以答得还不错。
后面的问题也都上面提到的一些问题,这里就不放了。
最后总结,三线城市的一些经验一些大公司都认为比较简单,不是特别承认。而且在小公司没有特别多人的团队,对自己的认知会产生严重的偏差。就比如我这块,因为是自学,所以觉得自己前端这块的基础比较差,但是做过4个左右项目,觉得自己的优势在项目经验这块。但是实际的面试反馈却完全相反。
最后放一下我简历上自己的技术栈,供上面的经历参考。
HTML:HTML5,语义化
CSS:CSS3,响应式
JavaScript:模块化,组件化
熟练:JQ,Vue2,ES6
掌握:RN,webpack,stylus,Scss,TypeScript
熟悉:微信小程序,NodeJs,expressjs,PS等
原文链接:http://blog.csdn.net/qq_25243451/article/details/79119498