Extreme programming 求职面试的配对编程

Extreme programming 求职面试的配对编程,extreme-programming,pair-programming,Extreme Programming,Pair Programming,我们公司一直在考虑取消面试程序,让每位应聘者与一些程序员坐4-5个小时,然后进行结对编程 理论上我喜欢这个想法,但我不确定你如何才能真正做到对每个候选人都公平。你如何评价他们?他们的输入是否真的取决于每个程序员当天的工作 关于这是一个好主意/坏主意还是如何使其发挥作用的任何想法都是我在这里寻找的 干杯 编辑: 结果-按要求 我们将一如既往地进行面试的第一步。电话之后是面对面的交流。我们将带3名开发人员回来,与团队的7名成员坐在一起,而不是带他们回来进行第三次也是最后一次盘问。我们已经决定让团队决

我们公司一直在考虑取消面试程序,让每位应聘者与一些程序员坐4-5个小时,然后进行结对编程

理论上我喜欢这个想法,但我不确定你如何才能真正做到对每个候选人都公平。你如何评价他们?他们的输入是否真的取决于每个程序员当天的工作

关于这是一个好主意/坏主意还是如何使其发挥作用的任何想法都是我在这里寻找的

干杯

编辑:

结果-按要求

我们将一如既往地进行面试的第一步。电话之后是面对面的交流。我们将带3名开发人员回来,与团队的7名成员坐在一起,而不是带他们回来进行第三次也是最后一次盘问。我们已经决定让团队决定谁被录用

我们得出这个结论有两个原因。我们相信,这将赋予开发者权力,让他们选择自己的工作对象。第二个原因是群体动态。我们认为拥有一个良好的团队活力非常重要,在你雇用一个人之前很难判断他们是否适合

所以最终的结果是我们将继续进行结对编程会话,但是以一种完全不同的方式,以一种完全不同于最初预期的方式

对这种方法的任何想法或批评都是非常受欢迎的!!
(此编辑作为答案发布在下面,因此,如果您觉得这不是最好的方法,请随意否决投票)

我希望您在这之前有一系列步骤。要想让它发挥作用,你需要一份出色的简历和手机屏幕。你不想把大量的时间花在那些一开始就不该与你交谈的候选人身上


所以你建议初次面试 可能还有第二次面试 作为结对编程会话特德 史密斯(1分钟前)


嗯。您甚至可以考虑使用类似的方式在web上进行一次简单的编码面试

最简单的方法是给每个人提供相同的程序员和完全相同的代码

你将遇到的问题是,招聘不像编程。没有一个循序渐进的过程来找到合适的人选。(您可以通过多个步骤简化决策)。你必须评估每个人的优势等,并基本上作出一个有根据的猜测,哪一个是最好的雇用。有时候你猜错了


关于结对编程,你需要注意的另一件事是让每个候选人在那个阶段通过这种测试所需的时间。如果我在找工作,我会犹豫要不要去一家要求我这样做的公司面试。为什么?因为这是一段很长的时间,如果我在多个地方面试,我可能会花上好几天的时间去面试我甚至可能得不到或想要的工作。像谷歌或微软这样的一些地方可能是个例外,但大多数地方与这两个地方不同。(更不用说,如果他们在编写真实代码,你实际上是在要求他们免费完成某人的工作)。

除非你在实际开发中广泛使用结对编程,否则我会非常犹豫是否使用它。我遇到过很多高质量的专业开发人员,他们都提到了对结对编程的强烈厌恶,他们的技能在这样的过程中不会得到很好的评判。

为什么不呢?而且,面试也不是总是(或永远)公平的。你应该对照传统的面试方法来评估新方法的最终结果


此外,结对编程之前的一次小型面试可能有助于避免程序员浪费时间与不合适的人在一起。

我喜欢这个想法。然而,我认为这可能很难做到,因为这需要候选人对你将与他合作的项目有一些了解。而且,4到5个小时似乎有点长。如果你马上发现这一切行不通,你会和候选人坐在一起度过整个过程吗


好问题。要考虑的东西。

为了公平起见,你必须让每位参与的员工都有一个准备好的问题来评估候选人。最好是他们公司经历中的真实世界,但已经解决的问题。这是一个很好的机会来评估问题的知识,而不仅仅是评估编程技能

我讨厌回答太具体的问题。我有一次面试,一位程序员在测试我对STL的知识,我广泛使用STL,并试图让我回答需要一个自定义分配器。我听说过它们,但从未使用过(尤其是在窗户上),而且感觉自己很笨。注意,避免做出判断

因此,我的观点是,如果你使用“结对编程”的思想,你可以评估更多定性的个性和解决问题的方法,而不是问一些与测试编程知识无关的实际问题


好问题

老实说,这听起来是个好主意,不过Jason Punyon肯定是对的,你应该在浪费开发人员大量时间进行筛选之前进行大量的筛选。你可以从中窥见一个在面试中几乎无法达到的重要指标:一个人喜欢和什么一起工作

我认为,如果你保持正确的评估态度,就没有必要担心基于主题的“公平”或试图向不同的候选人呈现一致的情况——这不是关于他们是否“得到了正确的答案”或跳过了正确的圈套,而是什么样的努力,问题