敏捷开发模式催生了很多跨越整个软件开发社区的兴趣、会议和书籍。有效的软件开发模式已经走向正确的轨道。然而,仍需改进的一个领域是,敏捷团队聘用人才的最佳方式。
来自 Menlo Innovations 的 Richard Sheridan 和 Lisamarie Babik 谈到在他们要雇人的时候,他们知道 传统的聘用方式可能无效。
传统的面试方法与传统的简历和面试过程中,忽略了开发人员是否适合在一个高度协作的环境中工作。
Menlo 运用的极限面试技巧的结构则更像一个试演。在这里,申请该工作的面试程序员在一起结对,同时面试官观察它们。面试的结果并不取决于问题的解决方案,而是由他们的沟通、团队合作、讨论、解决问题的能力和其他软技能以及技术能力而定。这一过程的细节共享在一份 白皮书中。
James Shore 则建议使用五阶段招聘法。在早期阶段采取最小的工作过滤大部分的候选人。后期则采取较多的工作来评估候选人的具体资质。
- 候选人自我过滤 - 创建一个进入门槛过滤那些不愿意努力的人,譬如,工作公告的五个问答题。
- 面试前过滤 - 候选人进来之后,面试小组立刻审查提交的问答题答案,任何小组成员反对都意味着该候选人不用进入下一阶段的面试。
- 行为面试(上午) - 面试小组可在该阶段允许更多地了解候选人的性格及经验。
- 配对会(下午) - 提供对候选人实际能力和行为的详细检查。候选人结对进行实际的任务迭代。第二天早上,面试小组一起验收基于 ORID 格式的汇报。
- 聘任书 - 这是最后一步,由招聘经理参与并发放工作机会。
Darren Hale 还建议使用类似的多阶段面试过程来评估候选人的技术、过程和个人特质。如 Darren 所述:
面试被分为三段:技术、过程和个性。 对于每一阶段,我们至少分配两个团队成员,这样团队的大多数成员能够跟候选人进行互动。面试的技术部分关注的是纯技术能力,其中包含一个实战编程练习。过程部分则结合了测试、问题解决、结对编程以及其他方面。个性部分着眼于解决冲突、个人动机和一般心理稳定性。我们发现,该过程十分有效。
Johanna Rothman 提到了一些从“敏捷团队招聘”讨论会 上收集的问题。
- 请给出一个例子,说明你参与过的针对不同观点的辩论。
- 请给出一个例子,说明即使你不同意团队的观点,你还是按照该观点行事。
- 请给出一个例子,你需要从其他地方获得某些信息,但最初你无法得到这些信息。
- 请给出一个例子,证明你成功地让团队采用不同的方式做一件事。
- 请给出一个你对团队方向提出质疑的例子。
这些问题对团队评价候选人与他人的日常沟通能力特别有效,包括主动性和与团队相处的问题。
因此,无论什么经济形势如何,敏捷团队雇佣技术人员或技术人员被敏捷团队雇佣都是个难题。关键在于找到一个完善的过程来寻找最适合的人才。人才应该因其能力被聘用,而不是在某个特定时期拥有的特殊技能。
如 Sheridan 总结:
我的建议是聘用人才而非技能,建立一个能够学习技能的环境,并在面试过程中强化你正在试图建立的文化。很多时候,我们的行业雇用在技能上能精确匹配的人才。我常劝告刚毕业的大学生,不要找这样的雇主,因为他们的意图很明确:“我们不愿意在你身上投资” 。
评论