面试那些事
我大概正式入职一年不到就开始被抓去做面试官了。
其中一个原因是比我资历深的人,在我正式入职前后差不多都走了。不过这在非前端主导的创业公司,一两个人就能挑起业务大梁的情况下,估计也是很常见的现象。
写这篇文章不是为了炫技,只是为了记录自己作为菜鸟面试官的一些经历和经验。
来面试的人大概分为以下几种:
1. 多年工作经验,但是……
工作经验写得满满当当,会的东西屈指可数。毕竟前端日新月异,跟一入行就是新世界的人相比,有些人可能才刚刚踏进新世界的大门。
2. 专业能力看似十分厉害,但是对前端……
成绩好像还不错,论文也发过几篇,主要的项目经验却大多是其他语言,前端相关的术语乱七八糟地分在各个地方,错误的拼写肉眼可见。你确定你要面前端??
3. 很明白套路,但是真实水平……
我入门前端的时候,还没有那么多入门文章。
现在大概稍微爱上网的人就知道去知乎上问如何前端入门,前端面试如何准备。
所以大概90%的人都能回答上来:
- position有哪些值,定位原点在哪里
- 清除浮动有哪些方法,原理是啥(深入的还能说出个BFC来)
- 盒模型说一说(再也不想说了哼)
- 水平垂直居中怎么做,各个方法列举一下(太!多!了!)
- rem原理来一发(说上个根元素font-size就完事儿)
- js深拷贝来一发(一般说上个递归印象分就蹭蹭蹭了)
- 原型链闭包(经典问题不考不是面试官)
- dom操作增删改查(有些人真的连这个都会错)
- 性能优化来一发(…多了去了)
- es6特性说几个来听听(说是能说上来,你再深入试试?)
…
这些概念问题已经大众到不是检验一个人水平如何,而是检验你是否会上网了。毕竟刷个一两天面试题,这些问题的出现频率就能让你看到背下。但到了真的写个常用布局、写个数组去重的地步,他们都可能写得乱七八糟。
实际上面的时候,这些问题问几个稍微考察一下即可,如果能答上来,建议问一下需要理解和实现的题目;如果大部分不能答上来,那就基本可以说再见了。
如果面试官问得问题都是这类大众问题,那么可能有两种原因:1. 他是新手(就是我);2. 他们要招的人应该不用挑什么大活;
4. 真的很有水平
这样的人大概是套路之上的套路,肯德基中的战斗机(??)。
他们知道你想要听的是什么,但是他们不但能给你正确答案,还能跟你侃侃而谈原理和源码,让你当场就忘记你还是个面试官。恩,稳住,然后认栽。
面试的时候要注意:
- 谨防套路,及时反套路(但不是指考很偏门的东西);
- 功课做足,自己的问题自己一定要了解、深入了解,不要被牵着鼻子走。自己不了解的问题还是尽量少问,问了你也不了解对方这方面的水平;
- 面试者侃侃而谈的时候,分清楚他到底是真的了解,还是把话题带偏了;
- 不要根据关键词打分!听上下文!
之后再面试我会尝试:
- 搜索引擎容易搜到的不多问,概念不多问
- 类似于“输入一个url到页面渲染完毕发生了哪些事”这一类自由发挥但是考核到很多实现细节的题
- 考察更多逻辑、算法、设计模式等等
等等……
其实很多问题都能用笔试来解决啊!!
最后,感谢一开始带我飞的leader
面试很有趣的~
和今天一起面试的面试老司机,有几道题真的醍醐灌顶。