it-swarm.cn

程序员的KPI

您知道开发人员的关键绩效指标吗?应该测量和监视什么?

28
Raymund

请考虑以下事实:您将得到准确的测量和监视。考虑到这一点:

可怕的事情要衡量

代码行-优雅的代码具有简洁的性质。代码行鼓励过分膨胀,复制和粘贴代码,或者甚至为了代码而更糟。

解决时间-快速完成的代码包含许多错误。

错误修正-伴随着“解决时间”。不要因为编写草率的代码而奖励程序员,尤其不要因为他们解决了最初造成的问题而奖励他们!

什么,恕我直言,您应该测量

影响。唯一重要的是您的开发人员do。您是否编写了将效率提高10%的工具?如何使过去需要3个小时的任务自动化?重构那个粗糙的库又如何使团队中的每个人现在都更容易使用呢?

您应该衡量所发生的事情之后已编写代码,以及所做的贡献对您的业务/公司目标的价值。请注意,可能会产生负面影响。

40
Chris Smith

http://i.stack.imgur.com/a0bTh.jpg

哪扇门代表您的代码?哪个门代表您的团队或您的公司?我们为什么在那个房间里?这仅仅是正常的代码审查,还是上线后不久我们发现了一系列可怕的问题?我们是否在恐慌中进行调试,仔细研究我们认为可行的代码?是客户成群结队而经理们垂涎三尺吗?.

(罗伯特·C·马丁(Robert C Martin) 清洁代码 -打开上图的书)

32
Homde

假设您雇用了一个聪明的人,那么他们应该把事情做好。除此之外,当您衡量员工(尤其是程序员)时,您将得到完全衡量的结果。

简而言之,监视项目是否在团队的标准范围内完成。

8
Austin Salonen

效率(完成的工作/小时)如何?这可以通过 番茄技术 来衡量。看看 此演示文稿

一旦跟踪了每个任务的番茄估计和实际执行的番茄,便可以测量现实因素,该工具称为 pomodairo 为您服务。这个现实因素可以总结您的估计有多好,效率如何;为了评估效率,我坚持不超过2个番茄任务。

我发现pomodoros是客观的(基于个人),因为每一个都意味着固定数量的重点工作,并且它们是您改进的一个很好的措施,恕我直言,这是任何此类重要指标的真正目的。

3
dukeofgaming

我们只是在工作中经历了这一过程。试图弄清楚我们的KPI应该是什么,然后弄清楚我们的KPI将是什么(因为事实证明它们很难衡量)。

KPI应该是一种及时解决业务需求的措施。如果有人知道衡量此事的好方法,请告诉我。 :)

我们最终决定使用已实现的功能数量。我们的客户在所有面向用户的功能上签字,并且将其公开设置为优先级(以便人们可以争取他们的优先权)。我们认为这将是衡量我们是否表现良好的简单方法。我们会看到.....

1
dietbuddha

您几乎没有可以使用的业务指标。您必须将程序员视为数学家或科学家。唯一可以衡量的是想法/代码的影响或潜在影响。您会计算数学家写的证明中的行数吗?

即使您使用度量,程序员也将根据确定工资的方式将其视为优化问题。另一点是,程序员的生产力每天都在变化,有时会写很多行代码,有时甚至不会想到新的设计思想,等等。

高管或经理有哪些关键绩效指标?也许您应该尝试将它们用于程序员,因为我们也会处理思想和思想。

1
Rudolf Olah

对于工业程序员来说,我认为节省/或赚取的每小时美元是唯一有意义的业务指标。

软件类型因具有游戏思维(计算机游戏,笔和纸,拼图等)而臭名昭著。 不要与业务需求不符的激励行为。

例如,如果您认为每周kLOC是关键指标,那么您会发现对于同一功能,您将获得更多的kLOC。

例:

int foo() {
   return blah;
}

可以变成:

int
foo()
{
   return 
      blah;
}

对于相同的功能。这是LOC的2倍增长。如果您主要基于LOC对我的生产力进行排名,那么您最好相信我将评估我是否要获得基于生产力的奖金/晋升。

0
Paul Nathan

我要说的是,您需要使业务部门的指标与编程保持一致。程序员不希望这样做,因为他们觉得业务部门会搞砸了,而且看起来也不好。

我的答案是:Dude –或Dudette –与您的业务用户一起工作,并为他们提供出色的工具,这将使他们超高效,成功就是您的成功。

0
Christopher Mahan