面试那些事

我大概正式入职一年不到就开始被抓去做面试官了。
其中一个原因是比我资历深的人,在我正式入职前后差不多都走了。不过这在非前端主导的创业公司,一两个人就能挑起业务大梁的情况下,估计也是很常见的现象。
写这篇文章不是为了炫技,只是为了记录自己作为菜鸟面试官的一些经历和经验。


来面试的人大概分为以下几种:

1. 多年工作经验,但是……

工作经验写得满满当当,会的东西屈指可数。毕竟前端日新月异,跟一入行就是新世界的人相比,有些人可能才刚刚踏进新世界的大门。

2. 专业能力看似十分厉害,但是对前端……

成绩好像还不错,论文也发过几篇,主要的项目经验却大多是其他语言,前端相关的术语乱七八糟地分在各个地方,错误的拼写肉眼可见。你确定你要面前端??

3. 很明白套路,但是真实水平……

我入门前端的时候,还没有那么多入门文章。
现在大概稍微爱上网的人就知道去知乎上问如何前端入门,前端面试如何准备。
所以大概90%的人都能回答上来:

  • position有哪些值,定位原点在哪里
  • 清除浮动有哪些方法,原理是啥(深入的还能说出个BFC来)
  • 盒模型说一说(再也不想说了哼)
  • 水平垂直居中怎么做,各个方法列举一下(太!多!了!)
  • rem原理来一发(说上个根元素font-size就完事儿)
  • js深拷贝来一发(一般说上个递归印象分就蹭蹭蹭了)
  • 原型链闭包(经典问题不考不是面试官)
  • dom操作增删改查(有些人真的连这个都会错)
  • 性能优化来一发(…多了去了)
  • es6特性说几个来听听(说是能说上来,你再深入试试?)

这些概念问题已经大众到不是检验一个人水平如何,而是检验你是否会上网了。毕竟刷个一两天面试题,这些问题的出现频率就能让你看到背下。但到了真的写个常用布局、写个数组去重的地步,他们都可能写得乱七八糟。
实际上面的时候,这些问题问几个稍微考察一下即可,如果能答上来,建议问一下需要理解和实现的题目;如果大部分不能答上来,那就基本可以说再见了。
如果面试官问得问题都是这类大众问题,那么可能有两种原因:1. 他是新手(就是我);2. 他们要招的人应该不用挑什么大活;

4. 真的很有水平

这样的人大概是套路之上的套路,肯德基中的战斗机(??)。
他们知道你想要听的是什么,但是他们不但能给你正确答案,还能跟你侃侃而谈原理和源码,让你当场就忘记你还是个面试官。恩,稳住,然后认栽。


面试的时候要注意:

  1. 谨防套路,及时反套路(但不是指考很偏门的东西);
  2. 功课做足,自己的问题自己一定要了解、深入了解,不要被牵着鼻子走。自己不了解的问题还是尽量少问,问了你也不了解对方这方面的水平;
  3. 面试者侃侃而谈的时候,分清楚他到底是真的了解,还是把话题带偏了;
  4. 不要根据关键词打分!听上下文!

之后再面试我会尝试:

  1. 搜索引擎容易搜到的不多问,概念不多问
  2. 类似于“输入一个url到页面渲染完毕发生了哪些事”这一类自由发挥但是考核到很多实现细节的题
  3. 考察更多逻辑、算法、设计模式等等

等等……
其实很多问题都能用笔试来解决啊!!


最后,感谢一开始带我飞的leader

面试很有趣的~

和今天一起面试的面试老司机,有几道题真的醍醐灌顶。