人们普遍认为,为软件开发人员设置可衡量的目标是行不通的,因为对目标的过多关注会导致行为违背组织目标(所谓的“测量功能障碍”)。
但是,在我公司,我们必须为所有员工设定目标,并受到人力资源部门的鼓励,使他们成为SMART。过去,我的第一级管理人员(团队负责人)和我尝试了多种方法:
- 设置除正常工作之外的可衡量目标,例如“对技术X进行培训”,“为没人能理解的代码段Y创建文档”等。在进行年度绩效评估时,不对开发人员的书面目标进行评分,而是根据我对他们正常工作的不可估量价值的评价,因为这实际上是公司所关心的。
- 设定非常具体的目标,例如“任务管理系统记录的工作日数”,“引入的错误数”,“引起的生产数”。这导致虚高的估算值和错误的错误分类,从而获得更好的“分数”。有趣的是,即使那些在该系统上得分很高的开发人员也不喜欢它,因为团队内在的信任受到了损害,他们并不总是觉得自己应得的地位。
- 在“做好您的正常工作”上设置模糊的目标。在进行年度评估时,它们的评级确实反映了相对于目标的绩效,但是目标本身是不可衡量的或不可实现的,因此对此表示怀疑。
这些都不是理想的。如果您面临类似的情况,尽管有证据表明它们的有效性,也必须为软件开发人员创建有意义的,可衡量的目标,那么哪种方法最适合您?
我发现相关问题并不能完全解决同一问题:
更新(2009年11月18日):我的问题有10个投票,而评分最高的答案只有4个投票(包括我每个人的投票)。我认为这告诉了我们一些事情:也许乔尔和其他人是对的,并且对于那些无法在不负面影响其真实(不可衡量的)价值的情况下进行开发的开发商来说,stackoverflow的综合智慧无法提出任何令人信服的,可衡量的目标。工作。感谢您的尝试!