Google的人力运营高级副总裁Laszlo Bock在一次采访中说Google发现在面试程序员时问智力题完全是浪费时间,Matt Rogish在他的这篇博客How to Interview Programmers - Rogish Reading Writing中有感而发,介绍了他认为正确的面试程序员的方法。

  • 先决条件
    • 在你雇佣第一个员工之前
      1. 想好你的企业文化
      2. 让你团队中的每个人都面试应聘者
      3. 确保你的团队中每个人都知道如何面试,制定面试计划和清单。
        • 每个人都写下来他要问什么问题,然后大家坐在一起过一下这些问题
        • 你要从应聘者身上发现什么素质?
        • 你通过什么手段来发现?
      4. 同一个问题不要问两次
      5. 举办一些模拟面试来提高面试技巧
      6. 让你的程序员先做做面试题,这样让他们能够在面试时得心应手
    • 在面试过程中
      1. 保持开放和诚实(比如不要问应聘者你希望的最低薪水是多少,你应该是第一个说要提供多少薪水股份的人。你应该有一个定义好的技术阶梯来描述你的公司中程序员的职业规划)
      2. 面试要因人而异,根据应聘者的背景进行剪裁
      3. 不要诱导证人(比如不要问你喜欢TDD还是简单粗暴直接开始)
      4. topgrading风格的问题
      5. 保持好的形象(应聘者也在面试你)
      6. 午饭订一个好馆子
    • 面试之后
      1. 每个人都要给出意见,要还是不要。更重要的是,要给出理由
      2. 如果你准备给offer,尽快
      3. 如果你不准备给offer,也尽快
  • 现场面试前
    • 初始电话面试(30-45分钟),主要是问一些基本问题,过滤掉你明显不会招的人。说明你的企业文化,让你的应聘者了解你的企业现状。
    • 第二轮电话面试(1-2小时),主要是确认应聘者会不会编程:)
  • 现场面试
    • 飞头等舱等。。。如果应聘者够牛,应该会同时拿多个offer,如果你在面试的一开始就招待好他会更容易雇到他
    • 一天的日程
      1. 参观办公室,看看休息区的高级咖啡机
      2. 介绍今天的流程
      3. 一些从工作中提取的或者和工作相关编程的题目(难度递增)
        • 题目不能太难(三周也搞不定),也不能太简单(靠记忆就能答出来)。开卷,能用google和stackoverflow
        • 在一开始就问问应聘者熟悉什么开发环境,帮他弄一个顺手的机器。或者让他带自己的笔记本
        • 最好有个题库。可以参考RubyQuiz 或者 CodeQuizzes
        • 目的是考察应聘者能解决一个真是世界的问题
      4. 午饭,邀请团队所有人都参加,问一些开放式的问题
      5. 结对编程
        • 如果签了保密协议,可以是公司的真实代码
        • 如果没签,就找个你在用的开源软件,然后一起价格新功能
      6. 送回酒店(不是机场,都累了一天了),如果预算允许的话,让人呆整个周末
    • 最好定一个月的试用合约,然后决定要不要给offer。

听听Matt Rogish说怎么面试程序员的更多相关文章

  1. 如何面试程序员 zhuan zai

    zhuan zai  http://blog.csdn.net/cuibo1123/article/details/41931909aia 面试对于大多数开发人员来说是一项很基本的技能.一次失败的招聘 ...

  2. 面试杂谈:面试程序员时都应该考察些什么?<转>

    一般来说,一线成熟企业技术岗位的典型招聘流程分为以下几个步骤: 初筛:一般由直接领导的技术经理或HR进行,重点考察教育和工作经历 一面:一般由可能直接与之共事的工程师进行,重点考察基础和工作能力 二面 ...

  3. 不要以为Bug写的好就是好程序员,其实这只占不到15%!

      最近和一位从事多年架构工作的技术哥们见面,聊到了近期面试程序员的一些经历,谈到了"如何判断程序员水平高低"这个话题,颇有些感触,觉得有价值,因此花了些时间整理.分享给大家. 正 ...

  4. .Net程序员面试所需要的一些技术准备

    夜已经很深了,但却毫无睡意,最近找工作和面试感触良多,所以想记录下来这段过程. 作为一个.Net程序员,不可否认是比JAVA要难混的.甚至在智联招聘或者大街网都没有.NET程序员的备用选项.真是令人悲 ...

  5. 程序员面试大揭秘——应聘微软、亚马逊、谷歌、苹果等IT公司你都要做什么准备?

    对于多数求职者而言,面试好似一个迷局.你去了,见了几个面试官,答了一堆问题,然后,或两手空空离开,或幸运地拿到录用通知. 你有没有想过: 面试结果是怎么得出的? 面试官会不会互相交流? 公司最看重哪些 ...

  6. 如何准备阿里社招面试,顺谈 Java 程序员学习中各阶段的建议

    引言 其实本来真的没打算写这篇文章,主要是LZ得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的对话都给记下来.LZ自己当初面试完以后,除了记住一些聊过的知识点以外,具体的内容 ...

  7. C#130问,初级程序员的面试宝典

    首先介绍下,目前C#作为一门快速开发的语言,在面试的过程中需要注意的技术知识点,了解下面的知识点对于初级工程师入职非常有帮助,也是自己的亲身体悟. 1.    简述 private. protecte ...

  8. 阿里面试回来,想和Java程序员谈一谈(转载)

    引言 其实本来真的没打算写这篇文章,主要是LZ得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的对话都给记下来.LZ自己当初面试完以后,除了记住一些聊过的知识点以外,具体的内容 ...

  9. Java程序员面试失败的5大原因

    下面是Java程序员面试失败最有可能的5大原因,当然也许这5点原因适用于所有的程序员,所以,如果你是程序员,请认真阅读以下内容. #1 说得太少 尤其是那些开放式的问题,如“请介绍下你自己”或“请讲一 ...

随机推荐

  1. Java之字符串学习

    java中String的使用十分频繁,是我们要学习的重点,在说String之前,我们要知道堆跟栈的区别. java中的数据类型分原生数据类型(primitived types)有八种(byte,cha ...

  2. LINUX 下mysql数据库导出

    mysqldump -u root -p dbname > db.sql

  3. CSS_Bootstrap

    ①BS学习的基础 第一个例子 <!DOCTYPE html> <html lang="en"> <head> <title>Boot ...

  4. 关于webapp的一个webframe问题

    最近重启ios webapp的项目,将之前的框架拿过来发现出现了错误,错误出现在写JSAlart控件的WebFrame上,xcode会报WebFrame是未定义的错误.由于之前使用的是ios5的 sd ...

  5. PHP 常用命令

    php常用命令: #输出语句 $ php -r "echo '123' . PHP_EOL;" #执行php脚本文件 $ php -f file.php   #查看版本号 $ ph ...

  6. Android 简单的FC

    直接贴log 01-02 08:17:56.589 I/ActivityManager( 312): Start proc com.android.providers.calendar for con ...

  7. 《C和指针》章节后编程练习解答参考——第8章

    8.1 #include <stdio.h> int main (void) { int a, b, c, d; // 不使用嵌套花括号初始化 unsigned ][][][] = { , ...

  8. 关于if/else if

    今天写存储过程的时候发现了个问题,就是在用if.elsif拼接sql的时候,得到的结果跟想象中 的不一样,大概描述是:  我传进去多个参数,然后判断每个字段是否为空,非空则将字段拼接上去,结果跟预料的 ...

  9. kernel编程规范

    1. 制表符8个空格2. 每行最长80字符3. 代码块的{放在首行,但是函数的{放在次行4. 只有一行的if块,不加{}5. 不在()前后加空格6. 正常关键字后加一个空格,if, switch, c ...

  10. document.styleSheets

    伪元素是不能选中的,如果非要改他的样式,两个方法. 静态方法: addClass的时候,新add的class带有新的伪元素. 动态方法: 如果知道它在document.styleSheets对象中的位 ...