首页
Preview

软件工程师绩效评估的替代方案

学习和发展审查

介绍

随着我们生活各个方面对软件的依赖程度越来越高,在软件工程团队中使用传统行业的管理技术已经获得了动力。

最近广泛采用的一种做法是使用性能测量。尽管此类方法做出了承诺,但许多领导者仍在努力衡量其工程团队的绩效:一开始,采用此类系统似乎带来了绩效改进,但不久之后,这些改进变得很明显不要转化为增加的客户价值。

性能测量的一个特殊用途是评估和评价单个工程师的性能。许多工程师现在都熟悉绩效评估的概念,但如果你想更新知识,Gergely Orosz 发表了一篇关于大型科技公司绩效评估流程如何运作的优秀文章。

绩效评估是如此普遍,以至于没有它们的世界似乎是不可想象的。尽管如此,许多人都熟悉或经历过传统绩效衡量系统的缺点,但他们还是忍受了它,要么是因为似乎没有其他选择,要么是因为他们认为如果改进当前系统,情况会变得更好。

但与商业和管理中的任何事情一样,绩效评估只是为解决问题而引入的一种工具。当该工具不仅无益而且有害时,我们应该寻找替代品。

在这篇文章中,我想表明:

  • 在软件工程中,由于无法观察所有关键维度的性能,性能测量系统自然会引入功能障碍
  • 任何使用测量驱动的绩效评估的组织都面临着更大的破坏客户价值的风险
  • 可以基于内在动机构建替代的最佳系统

我们为什么要衡量绩效?

使用绩效评估的公司通常这样做是为了激励工程师为实现公司目标付出更多努力。该模型的基本假设是,如果可以将增加的努力用于预定的目标,就会产生更多的价值。

公司试图引入明确的绩效衡量标准,以客观地评估工程师的绩效、减少偏见并提高一致性。在基于度量的性能评估系统中,软件工程师的性能是根据一组有限的维度进行评估的,每个维度都有自己的一组度量。根据测量结果,工程师将获得一个等级,这通常对应于奖金。

虽然这在纸面上看起来像是一个很好的系统——你产生的价值越多,奖励就越好——但现实是这样的系统会引入扭曲,可能会破坏系统本身的目标:组织最终表现得比没有它时更糟系统到位。

在研究为什么会发生这种情况之前,有必要简要总结一下我们在引入绩效衡量系统时观察到的典型功能障碍。

衡量绩效的障碍

曾在采用基于测量的绩效评估的公司任职的任何人都熟悉该系统引入的以下功能障碍:

  • 破坏团队合作
  • 关注个人绩效而不是系统绩效
  • 注重数量而不是质量
  • 过时的性能标准
  • 测量不准确
  • 谨慎行事的心态
  • 不断的不满
  • 限制对工作的自豪感
  • 让我们看看它们中的每一个。

破坏团队合作。 在评估个人贡献者的绩效时,我们需要从团队的总成果中提取个人的具体贡献,同时确保我们不会将他们没有贡献的东西归因于他们。这说起来容易做起来难,原因有二:

  1. 这假设所有的努力都是可以观察到的,并且经理完全了解哪些因素会导致哪些结果。在实践中,很多生产活动大多是精神上的,或者发生在人与人之间的交往中,这两者都很难观察和衡量。此外,大多数时候,很难确定输入(例如努力)和输出(例如结果)之间的联系
  2. 为结果做出贡献的人数比我们想象的要多。在许多情况下,当某人对一个项目做出非凡贡献时,他们会忽略其他人接手的工作的其他方面。我们如何评价第二个人对项目的贡献?例如,假设个人贡献者 A 需要专注于一个项目,而同事 B 决定选择他们的随叫随到职责,以便 A 可以专注于该项目。A 的项目变得非常成功,但是 B 的努力使它成为可能。应该奖励 B 多少?

由于绩效评估是基于个人绩效,因此个人通常面临选择是做对自己的薪水或奖励最有利的事情,还是满足团队的需求。在大多数情况下,会发生的是牺牲团队的需求。

重视个人绩效而不是系统绩效。 工作发生的系统在个人贡献者的绩效中比个人贡献者本身发挥更大的作用。为了提高自己的绩效,个人贡献者面临三种可能的选择:

A.完善制度

b. 让数字看起来更好

C. 游戏系统

从客户的角度来看,改进系统是最佳选择,因为它不仅可以提高个人的绩效,还可以提高其他所有人的绩效。但这也是一项艰巨的任务,通常需要跨职能协作和跨越多个管理层的工作。

其他两个选项更便宜,虽然它们不会为客户带来任何价值——相反,它们会破坏价值——但它们可以带来更好的绩效评估。

很容易理解为什么大多数时候人们会选择最后两个选项之一。

注重数量而不是质量。 数量和质量通常是公司试图衡量的两个最常见的工作方面。但是,虽然数量更容易衡量——在生产过程的任何阶段总有一些东西是你可以计算的——但质量更难评估,就像在知识工作中一样,生产活动主要是脑力活动,因此很难观察。这种差异通常会促使人们在易于衡量的维度上最大限度地努力,而降低对不易衡量的维度的关注。

过时的性能标准。 要评估个人,组织必须首先设定评估人员的标准。这些标准可以明确设置。例如,有一份文件描述了期望员工在绩效周期结束时实现的目标——或隐式设定——个人通过查看获得奖励的内容来了解​​公司期望他们做什么。

在这两种情况下,这些标准都深深植根于过去:它们描述了公司认为在即将到来的周期中需要什么,或者过去得到了什么回报。因此,它们限制了个人对机会做出反应以及在出现新情况时为客户做最好的事情的能力。我们知道,在当今的商业环境中,条件不断变化,而赶上不断变化的条件的能力是一种竞争优势。

测量不准确。 在经典工程控制理论中,可以设计一个控制器来监控受控过程,将其与特定设定值进行比较,并实施一种算法,通过应用系统输入,可以将系统驱动到所需状态,达到一定程度的最优性。虽然我们很容易认为我们可以应用相同的理论来控制工程团队,但微小的差异就无法保证测量系统的准确性。

当我们将测量系统应用于由人组成的系统时,我们必须考虑到控制系统的组件具有自利行为。换句话说,当人们知道测量系统时,他们往往会对它做出反应。

测量系统的目的是缩小测量性能与期望目标之间的差距。如果测量系统下的人知道这一点,那么颠覆系统以确保系统测量没有差距是一种理性行为。在产品开发等复杂系统中,个人可以控制信息流,并且很容易隐藏将自己或团队的绩效置于聚光灯下的措施。如果不相应地增加客户价值,也很容易使数字看起来更好。

谨慎行事的心态。 如果人们的薪酬取决于达到或达到某些标准,那么人们将尝试设定这些标准以使其在他们工作的系统和他们当前的能力范围内可以实现,这是必然的。

关于设定雄心勃勃的目标有很多花言巧语,或者诸如“如果你实现了超过 70% 的 OKR,你还不够雄心勃勃”,但事实是很难确定一个目标有多雄心勃勃是的,设定目标的人总能找到一种方法来描述他们的目标,使其比实际目标更具挑战性或更雄心勃勃。累积的结果是整个组织开始瞄准简单或可实现的目标,而很少设定可能导致失败的硬目标。

不断的不满。 由于人性,大多数接受绩效评估的人都会对系统感到不满。例如,考虑以下场景:

  • 你被评为公司前 50%,但其他人被评为前 20%
  • 你被评为前 20%,但其他人被评为前 10%
  • 你被评为前 20%,但去年你被评为前 5%

发生这种情况时,人们可能会以几种不同的方式做出反应,从而破坏组织的价值。例如,他们可能变得愤世嫉俗并且不信任系统。或者他们可以开始怀疑自己并开始降低自己的期望。即使是获得最高评价的人也不能幸免于这些影响,并可能患上冒名顶替综合症。例如,他们可能会开始将自己的好成绩归功于运气,并开始担心自己“真正的”无能会在未来的某个时候显露出来。

限制对工作的自豪感。 当人们根据外部系统进行衡量和奖励时,绩效控制就从组织的个人贡献者身上移除了。这意味着个人贡献者不再按照他们自己的标准和期望工作,而是遵循别人的标准。反过来,这在个人贡献者和他们的工作之间造成了分离——它不再是他们的了;这不是根据他们的技能和经验精心制作的作品。

在描述了最常见的功能障碍之后,我们现在可以研究它们出现的原因。

为什么会出现功能障碍

Robert D. Austin 开发了一个有用的模型来描述激励措施如何影响绩效。对于任何有兴趣深入研究他的理论的人,我建议阅读他的书“衡量和管理组织绩效”。

在 Austin 的模型中,客户和公司都希望员工以能够使客户价值最大化的方式分配他们的工作,而成本又能让公司获利。员工的努力能力有限,员工需要将这种努力花在多项活动上——为简单起见,我们假设有两项活动。

客户将从每项活动中花费的每种努力组合中获得一些价值。如果我们将提供相同价值的所有组合连接起来,我们将获得一组称为“相同价值曲线”的曲线。同样,我们可以将员工花费相同努力量的所有点连接成一组线,称为努力能力。

努力能力线与同一价值曲线相切的点代表首选分配:这是员工选择的努力分配使客户价值最大化的点。如果我们连接所有首选分配点,我们将获得最佳混合路径。最佳组合路径是一组分配,对于任何给定的努力水平,都可以使客户的回报最大化。

基于努力能力和客户价值的最佳组合路径示例

激励系统的目标是提高员工付出的努力水平,并以最大化客户价值的方式调整努力分配。

当公司采用绩效衡量系统时,其目标是实施定义为全监督的激励系统。

当可以衡量对员工绩效至关重要的每个维度时,就会发生全面监督。如果可以做到这一点,员工就会确切地知道如何分配他们的努力,因为这种组合会给他们带来最高的回报。但是,尽管全面监督非常有吸引力,但并非总是可行,而且在实践中,这种情况比人们想象的要少得多。

当绩效的关键维度无法衡量时,使用基于衡量的绩效评估系统将导致个人根据可衡量的维度优化他们的工作——这会损害无法衡量的维度。这种情况称为部分监督。

在部分监督场景中,由于只有一些维度是可观察的,员工可以自由决定在不可测量的维度上花费多少努力,同时通过在可测量的维度上花费努力来最大化他们的回报。由此产生的工作量分配不是最优的,因为员工可以为为客户提供较少价值的不可测量的维度设置目标。

当一家公司认为他们正在实施全面监管,但实际上他们处于部分监管的情况时,就会出现功能失调。

部分监管场景

让我们看看上图中发生了什么,其中横轴代表一个被测量的活动,而竖轴代表一个不能测量的活动。最初,员工可能会在保持最佳组合路径(P1 点)的同时分配他们的工作量。但在测量系统的压力下,员工将开始在活动 1 上花费更多时间。最初,这对公司仍然有利,因为员工将增加他们在两项活动 (P2) 中的总努力,但在某个时候,员工意识到他们可以通过只关注活动 1 (P3) 来获得更好的回报。

公司仍然从员工的工作中获得一些价值,但没有达到他们所能获得的价值。但是,如果任其发展,绩效衡量系统的压力可能会导致员工完全为了自己的奖励 (P4) 而优化而不提供任何价值。在这种情况下,员工做出的选择(选择路径)与最佳组合路径不一致。

很多人都看到了这种情况。假设公司采用绩效评估系统,根据编写的代码行数 (LOC)、关闭的任务数和引发的生产事件对工程师进行评估。从事这项工作几年的每个人都知道,这些都不是衡量正确的事情,但它们是最容易衡量的事情之一。

让我们假设公司认识到其他活动的重要性,但选择不衡量它们,因为成本太高——例如,花时间帮助其他工程师提高效率。

在这些假设下,系统预测工程师将在那些可以测量的维度上不断增加他们的努力水平,并会减少在那些无法测量的维度上的花费。在性能周期结束时,我们可以预期:

  • 个人将编写大量代码行,但对其质量或是否需要这些行没有任何保证
  • 许多任务将被创建和关闭
  • 由于担心影响个人指标,将倾向于隐藏生产事件
  • 花时间帮助别人会被气馁 如果我们目前进行绩效评估的方式引入了这种扭曲,我们如何才能做得更好?

超越基于测量的绩效评估

要回答这个问题,我们需要提醒自己绩效评估系统的真正目的是什么。绩效评估系统的真正目的是使员工付出的努力与实现组织目标的方向保持一致,这反过来又转化为提高组织绩效的关键指标之一——大多数时候是利润。

全面监督和部分监督是组织可以根据观察全部或部分关键维度绩效的能力实施的两种控制机制。当我们认为我们已经实现了完全监督时,就会出现功能障碍,但实际上,我们只能实现部分监督,因为性能的某些方面不容易衡量。

如果无法实现完全监督,我们必须问自己一个简单的问题:如果我们删除所有类型的测量会发生什么?这种情况称为无监督。

没有监督会怎样?

在无监督的情况下,员工根据他们的总努力能力和优化客户价值的组合来决定如何花费他们的努力。

如果我们做以下假设:

员工知道客户想要什么。换句话说,可以知道客户对员工的每项努力分配的价值 员工从满足客户需求中获得效用 然后可以证明最终的努力分配位于最佳组合路径上,这意味着对于给定的努力水平,选择可以为客户带来最大价值。

无监管场景 最初,员工将开始付出一些努力并从满足客户需求中获益(P0 点)。如果获得的效用大于付出努力获得的负效用,员工就会接受此举是好的。

但不久之后,该员工认识到,通过花费相同的努力,他们可以通过重新平衡他们的努力分配来实现更多的客户价值(P1 点)。在这一点上,员工可以不断增加他们的努力和他们从满足客户需求中获得的效用,直到他们达到一个点(P5)。在这一点上,进一步增加努力将从总努力支出中产生的负效用大于满足客户需求的效用。这是无监督场景下的最优分配。

如果我们将这些结果与部分监督所取得的结果进行比较,很容易看出没有监督可以达到与完全监督相同的结果,而且它实际上产生了比部分监督更好的结果。随着员工努力能力的提高,他们在无监督情况下比在部分监督情况下达到更高的相同价值线。

比较无监督和部分监督

现在越来越清楚的是,我们可以基于无监督场景构建测量驱动方法的替代方案。但在继续之前,我们必须再次审视该模型的假设。

无监督情景下的假设

我们刚刚描述的模型基于两个假设:

  1. 员工知道客户想要什么。换句话说,可以知道客户对员工的每项努力分配的价值
  2. 员工从满足客户需求中获得效用 在基于无监督的系统中,员工的动机是做好工作、作为个人学习和成长以及做一些重要的事情。这就是我们所说的内在动机。内在动机被定义为由内部奖励驱动的动机。

相反,像上一段中讨论的那样的监督系统依赖于外部激励的使用:员工因实现和超过组织绩效目标而受到奖励。外在动机被定义为当外部影响驱动个体时发生的动机。

这意味着,如果我们营造一个环境,让员工因做好工作的愿望而受到激励,并且从客户的角度了解什么是好工作,那么完全没有任何衡量标准就可以建立一个高绩效的组织看法。我们如何构建这样的环境,绩效评估在其中是什么样子的?

营造培养内在动力的环境

你可以阅读许多优秀的书籍来学习如何构建这样的系统。我推荐的前三本书是:

  • Turning the Ship Around by David L. Marquet
  • Drive: The Surprising Truth About What Motivates Us by Daniel H. Pink
  • Empowered by Marty Cagan

建立基于内在动机的系统的关键原则如下:

  • 雇用内在动机
  • 专注卓越
  • 培养客户同理心
  • 促进信任

雇用内在动机。 并非每个人都渴望做好工作、在此过程中成长并与他人良好合作,这很好。但要使该系统取得成功,你雇用的人员必须受到内在动机的驱动。如果你的面试过程已经有一个行为面试步骤,可以通过一些问题来加强它,这些问题可以从候选人的以下经历中寻找例子:

通过与团队中其他人的合作取得成果 认识到自己的绩效差距并做出改进 根据反馈采取行动 加倍努力让客户满意

根据候选人提供的答案类型,你可以评估他们是出于内部还是外部动机,然后才进入下一步,你认为候选人会在这种环境中取得成功。

专注于卓越。重要的是,团队要为他们所交付的成果感到自豪,并且他们会受到鼓舞去追求更高的目标。为此,你需要营造一种文化,让团队在工作中不断追求卓越。团队可以通过多种方式展现卓越,但重要的是,每次看到它时,你都应该认可它并庆祝它。

培养客户同理心。 为了使个人贡献者的内在动机与客户需求保持一致,重要的是要确保工程师与客户保持联系,了解他们的需求和愿望,并了解他们的决策对客户满意度的影响。一种方法是培养客户同理心。许多技术可以用来培养客户的同理心。我最喜欢的一些方法包括由 Intuit 或Everyone on Support由 37 Signals开发的Follow Me Home技术

促进信任。 信任是一种流行语,尤其是在当前的经济环境下,很难在公司和员工之间建立信任关系。在我看来,信任意味着尊重。你可以通过多种方式表现出尊重和建立信任,你需要注意所有这些关键时刻,以确保你正在增加而不是减少信任。例如,表达信任的一种方式是接受人们时不时会犯错,并传达这样的信息:只要我们从错误中吸取教训就没关系。

绩效评估的替代方案:学习和发展评估

到目前为止,我们已经描述了如何创建一个基于培养内在动机的环境,但我们还没有说明绩效评估在其中扮演的角色。如果你想建立一个基于内在动机的绩效管理系统,你可以用学习和发展审查取代传统的绩效审查。

学习和发展审查侧重于帮助个人走上精通之路。它与任何奖励或奖金无关,但提供反馈以帮助个人改进和成长。它是什么样子的?

让我们退后一步,将产品开发视为一个学习问题。

产品的工作是以适合企业的方式满足客户的需求。如果我们通过持续学习的视角来看待这个问题,实现这个目标需要我们回答两个基本问题:

  1. 我们在满足客户需求方面做得如何?
  2. 我们需要在个人和系统层面建立或改进哪些能力,以继续满足他们的需求?

这意味着我们可以围绕这两个问题重新设计绩效评估,并增加第三个问题:

  1. 我们在满足客户需求方面的合作情况如何?

遵循这些原则,可以围绕以下五个部分构建学习和发展回顾:

  • Summary of impact:这是对这个人在过去一段时间内所做的主要贡献的描述
  • 与核心能力相关的反馈:与特定能力或规则相关的可操作的具体示例
  • Contributions to others success:个人对公司其他人成功的贡献程度
  • Top strengths:个人在过去一段时间内表现出的前三强的总结
  • 成长领域:个人可以提高和做得更好的前三个领域
  • 展望未来:作为一名工程师,在保持成长和发展方面,个人的优先事项应该是什么

如果你正在寻找模板,我在这里整理了一个模板,你可以将其用作起点。

实施基于内在动机的系统时应该注意什么?

与传统的基于测量的绩效评估一样,实施基于内在动机的系统并非免费或没有任何风险。以下是你应该注意的事项:

营造一个让个人贡献者觉得他们可以被他们的技能和经验所驱动的环境需要时间。虽然建造它需要很多时间,但摧毁它却需要很短的时间。

发生这种情况是因为这样的环境是基于信任的。员工与组织之间的每一次互动都有助于建立这种信任,但互动并非生而平等。最初,一群人需要一段时间才能达到可以建立信任的心理安全状态。一旦达到该状态,团队就会继续寻找信号,确认他们处于一个他们感到安全、可以冒险并彼此脆弱的环境中。

只要信号不断传来,团队就会处于相互信任的状态。但即使是管理团队成员的一个失误也可能导致团队后退很多步。发生这种情况是因为消极偏见,即人类学习和使用负面信息的倾向远多于正面信息。

建立基于内在动机的环境对担任领导职务的任何人都有很高的要求,因此特别容易受到无效领导和人员管理的影响。

常见问题

问:你怎么做X?

人们在考虑超越绩效评估时提出的一个常见问题是,如果没有它们,公司将如何实现 X,其中 X 可以是加薪、奖金、晋升和绩效管理。X 可以采用如此多的值这一事实表明绩效评估是一种超载的工具:许多不同的结果都是通过它来驱动的。这个问题的一般答案是,即使不进行绩效评估,你仍然可以做所有这些事情。

问:你如何管理绩效?

超越绩效评估的最大恐惧之一是公司将如何管理员工的绩效。但实际上,绩效考核并不是解决绩效问题的最佳场所:在绩效考核中解决绩效问题就是委派或推迟经理的工作。

某些东西无法衡量的事实并不意味着它无法管理。管理者仍然有责任管理他们支持的个人的绩效,在存在差距时帮助他们,并在无法解决时采取行动。在这个新模型中,绩效管理成为经理和个人之间持续协调的过程。

问:你们如何支付奖金?

许多进行绩效评估的公司将奖金与达到特定绩效评级挂钩:例如,达到预期的人会获得与其级别对应的标准奖金,而超出预期的人会在标准奖金的基础上增加 15%。由于学习和发展审查不分配评级,公司如何继续支付奖金?

简短的回答是你不需要支付奖金。奖金是依赖外在动机的系统的一部分,但如果你将系统建立在内在动机之上,那么奖金可能会损害动机,因为你是在奖励员工,因为他们本可以因为内部动机而完成的事情。如果你不支付奖金,你可以做两件事:

  1. 修改你的基本薪酬,以匹配你的同龄人在基本工资+目标奖金方面的表现。基本上,你认为奖金已经是基本工资的一部分
  2. 提供与个人绩效无关的激励措施,但对每位员工都是一样的。例如:
  • 你可以有一个利润分享机制,员工根据任期获得利润分成
  • 你可以提供员工股票购买计划,员工可以在该计划中以折扣价购买公司股票

对任何基于任期的激励制度的普遍反对之一是,它鼓励人们坚持一家公司只是为了获得奖励的好处。这种行为称为滑行。

当有人设计一个系统来阻止滑行时,我看到两个主要问题:

  • 你基本上是在放弃你作为经理的责任。我们没有营造一种环境,让人们可以由内部动机驱动,并在目标不再一致时进行绩效管理,而是创造了一种让人们难以留下来的环境。

例如,众所周知,一些公司设计的薪酬方案会在三四年后出现总薪酬悬崖,迫使人们离开,除非他们得到晋升

  • 你正在为少数可能会闲逛的人而不是大多数想来上班做好工作的人优化你的系统

还有另一个方面需要考虑——促进终身制实际上可以提高知识工作的质量。软件工程需要时间:开发领域知识、建立健康的团队以及了解客户的需求。

结论

采用高绩效文化思维方式的公司传统上一直采用按绩效支付薪酬的管理方法,其工作原理是相信员工可以通过奖励他们的额外努力来获得更高的绩效。

在软件工程中,这种做法会适得其反,反而会降低性能。发生这种情况是因为软件工程师工作的许多维度是不可观察的,引入性能测量系统将迫使工程师针对易于测量的维度进行优化,从而损害客户价值的整体交付。

另一种方法是摆脱基于测量的绩效方法,并建立一个员工内在动力可以占上风的工作场所。在这样的环境中,绩效评估被学习和发展评估所取代,后者侧重于帮助员工建立公司成功所需的优势。

译自:https://betterprogramming.pub/the-alternative-to-performance-reviews-for-software-engineers-7b6d1c9537dd

版权声明:本文内容由TeHub注册用户自发贡献,版权归原作者所有,TeHub社区不拥有其著作权,亦不承担相应法律责任。 如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

点赞(0)
收藏(0)
jimmy
悟已往之不谏 知来者之可追

评论(0)

添加评论