前言
最后更新于:2022-04-01 03:21:07
> 作者:[Lucida](http://lucida.me/about)
> * 微博:[@peng_gong](http://www.weibo.com/pegong/)
> * 豆瓣:[@figure9](http://www.douban.com/people/figure9/)
> 原文链接:[http://lucida.me/blog/whiteboard-coding-demystified/](http://lucida.me/blog/whiteboard-coding-demystified/)
> *这篇文章节选自我正在撰写的一本关于应届生面试求职的书籍,欢迎在评论或微博([@peng_gong](http://www.weibo.com/pegong))上留言反馈。*
面试很困难,技术面试更加困难——只用 45 ~ 60 分钟是很难考察出面试者的水平的。所以 [刘未鹏](http://mindhacks.cn/) 在他的 [怎样花两年时间去面试一个人](http://mindhacks.cn/2011/11/04/how-to-interview-a-person-for-two-years/) 一文中鼓励面试者创建 GitHub 账号,阅读技术书籍,建立技术影响力,从而提供给面试官真实,明确,可度量的经历。
这种方法对面试者效果很好,但对面试官效果就很一般——面试官要面对大量的面试者,这些面试者之中可能只有很少人拥有技术博客,但这并不代表他们的技术能力不够强(也许他们对写作不感兴趣);另一方面,一些人拥有技术博客,但这也不能说明他们的水平就一定会很牛(也许他们在嘴遁呢)。
总之,技术博客和 GitHub 账号是加分项,但技术面试仍然必不可少。所以,问题又回来了,如何进行高效的技术面试?或者说,如何在 45 ~ 60 分钟内尽可能准确的考察出面试者的技术水平?
回答这个问题之前,让我们先看下技术面试中的常见问题都有什么: