追求最好

我不认识你,但我喜欢和别人一起尝试。 通常,我不问别人意见,但是这次实验是根据他们的要求进行的。 人们希望我给他们一个新的激励系统。 好吧,我做到了。

这篇文章有点长,因为 我不仅试图解释输入和输出,还解释系统的开发过程,过程中出现的问题以及我们如何解决它们。 也许我们的经验将对您有所帮助-如果不是全部,则其中的某些部分。

因此,在入口处-一支由三人组成的1C程序员小组正在研究解决方案。 另外,以他们的核心能力,我(他们的领导者)也是1C程序员。

业务流程是最常见的:

1.向程序员分配来自任何部门的任务;
2.如果需要,任务必须经过批准。 对于不同的任务,协调员的列表是不同的。
3.任务有最后期限,有转移的可能性(不超过两次)。 在开始之前,双方均同意最后期限;
4.有些自动化项目是级联进行的。 项目中的任务与其余部分一样生活-有截止日期,有批准等;
5.有职责形式的技术支持-程序员轮流坐了1周。

激励机制
1.程序员的工资取决于资格;
2.对于未按时完成的任务会产生动力。
3.有实施项目的奖金。

所有这些东西的自动化是最常见的。 为了设定目标,使用了常见的企业系统,例如1C:文档管理。 它具有生活任务的说明和备忘录。 级联项目管理的自动化程度很小。 如果违反截止日期,则会自动计算出动力。

看来-生活和欢乐,工作-不要碰到靠背的人。 如果您参加他们的作品,那么按时完成任务并不难。 工作-没有太多困难,没有什么超自然的。 作为领导者,我在其他服务中并不脱颖而出-在其他服务,任务,时间表和项目中,它们是根据相同的原则进行管理的。

但是一个问题困扰着我们- 如何赚更多的钱?

在当前的系统中,有两个杠杆-实现薪水或项目奖励的增加 。 公司通常不希望增加1C程序员的薪水,因为 他们几乎不明白为什么这个家伙需要多付钱

对于高级培训,还是某种分类,例如成绩? 如果资格不影响结果,为什么还必须为此付出更多的钱,这不是很清楚。 如果程序员的结果不同,这是否与正式资格相关? 如果您还是这样,增加工资多少? 目前的工资大约等于市场平均水平。

几次增加程序员的薪水仍然成功。 例如,一名涉案的专职人员通过认证将其驱逐出境。 他们增加了另一个,因为他在市场上很好,他的价值更高(主观评估)。 但是,这条路不能经常重复,以免听到“你到底在那儿干了还是什么?”

努力增加项目奖励也是不可能的,因为 这个话题很滑。 不管喜欢与否, 项目奖励是已经支付的工作的额外款项 。 当然,您可以用某种方式重新表述它,例如,提前执行,积极参与实施或将自动化快速带入客户需求的额外费用。

但是领导者迟早会问这个问题-如果一个人总是总是提前完成项目,我为什么要为此多付钱呢? 也许截止日期计算不正确?

经过深思熟虑,我们和程序员自行决定创建一个激励系统并更改我们的工作,以便明显为公司带来更多利益。 假设为了更大的利益,我们将获得更多的钱。

与公司讨论我为公司带来的好处是正确的。 我与领导,董事,所有者进行了交谈。 意见是不同的,但是如果将它们分组并排序,则中心思想是: 我们希望您已经在做的事情,只是更快 。 或以另一种方式:我们希望同时获得更多。

显然,我们在谈论编程和实现速度 。 应该注意的是,那时我们对Scrum一无所知,因为Scrum是一种加速程序员工作的方法。

对于我来说,作为领导者,这一刻非常重要: 我希望程序员照顾好他们的结果 。 我不想踢他们,站在我的灵魂上方,控制进程和时机。 我需要一个自治系统,没有我,也没有领导。

最适合我们目的的付款系统似乎是完成工作的计件工资 。 听起来很有希望,容易证明:这是人,这是工作,这是收入。 不需要激励-如果一个人不想工作,他将不会赚钱,这将变得显而易见。 有了这样的人,就可以无悔地离开。

出现了一个关键问题- 如何评估作品以及为作品支付多少费用 ? 用法郎表示,此问题可以更简单地解决-估算了客户需要支付的小时复杂性。 实际上,程序员收取的是小时费率的百分比。 我们没有客户和金钱关系,但是我们需要以某种方式评估工作。

这个想法以及它的实施和证据基础很快就来了。 我决定在最好的程序员的时间里评估这些任务。

如果最好的程序员在1个小时内解决了问题,那么它将花费1个小时。 另一个在4小时内解决此问题的程序员将获得1个带薪小时。

为了“由最好的程序员”评估任务,您需要了解任务是谁。 我们这样决定: 最好的程序员具有解决问题的所有必要知识 。 他了解方法论领域,了解平台的必要机制,了解元数据和“内容”。 通常,坐下来做,不会浪费时间。

此类评估的主要目标是通过使无利可图的方式最大程度地减少时间损失。 程序员工作中的损失是巨大的,就数量而言,损失通常超过工作时间的一半。

我个人做了“最佳”评估,这也许是整个系统的瓶颈。 立即清楚的是,有必要建立评估系统,如果它不是透明的,则要进行追溯检查。 因此,我决定制作一个工作评估分类器-一本简单的参考书,其中包含用于解决问题及其评估的标准组件。 它逐渐被填满,我们称工作评估为“判例法” -在实践中测试的项目以及测得的交付时间落入了分类器。

分类器包含例如以下各项:
  • 在用户模式下在ACS上开发一个简单的报告,例如“ Sales”(一个寄存器)。 得分-15分钟;
  • 创建累积寄存器,并简单记录动作,该动作完全取决于文档的上下文。 得分-15分钟;
  • 在没有RLS的情况下进行角色开发,其中包含一小部分(最多10个)允许的对象。 评分-10分钟。

交货时间包括开发人员进行的开发和测试。 如果在该任务中创建的更改的工作数据库中发生错误,那么执行者将自费纠正这些错误。

程序员执行的每个任务在执行之前都会收到这样的评估。 显然,某些任务包含分类器的多个要点-例如,一个寄存器,几个详细信息,一个报​​告和一个自动任务。 在这种情况下的时间被总结。

现在必须确定最好的程序员一个小时的工作要付出多少钱 。 我们在额头上决定了这个问题。 然后,一个普通的优秀程序员在市场上得到6万卢布。 我们决定最好的程序员应获得100 tr。 显然,此图可以在任何方向上更改。

简单的计算和四舍五入为我们提供了最佳程序员的时薪: 每小时600卢布

这个数字看起来不错,因为它是当地专营权的小时费率的一半,并且低于自由职业者的成本,自由职业者每小时的要价为700-900卢布。

但是最主要的是- 只有直接工作才是我们小时工资的一部分。 没有反思,建模,决策分析等。

但是,意识到仍然可以与领导层就此赌注进行对话,因此我们决定确保我们是对的。 为此,与朋友和陌生人的专营权和自由职业者进行了交谈。 我们给了这些人一些任务以进行评估,并提出了一个简单的问题-您将为这项工作花多少钱? 结果是可以预见的-要求的工作量是我们要求的2-3倍(考虑到工资税)。 这平静了-屁股被盖住了。

现在,有必要按每月应得的金额来平衡系统,以避免双向错误。 第一面是程序员。 你永远不知道,突然发现程序员赚了10 tr -他将没有什么养活家人。 解决方案很简单,当我在特许经营部门工作时,我看到了这一点- 设置最低每月付款额 ,该金额应低于程序员不会收到的最低金额 。 他们三思而后行地决定这将是当前的工资。

第二面是公司。 最低支出是无利可图的,因为 它可以用来欺骗系统。 例如,每个月要在州“几乎准备就绪”之前完成20项任务,领取薪水,下个月取得突破,关闭20项未完成的任务,再完成30项新任务,并达成协议。 顺便说一句,在专营权中就是这样,每个人都使用它。

解决这种情况的办法也很简单- “记住减号” 。 他确实从事40 tr的工作,薪水为60 tr -好吧,请记住零下20 tr 下个月,您将不得不。 下个月工作在80 tr -您获得60 tr,但您不应该这样做。

同时,以防万一,我们将支出上限设置为100 tr。 我们同意在下个月将超过此金额执行的工作视为加号。

现在,我不得不弄清楚如何处理这些项目。 一个项目,如果简化了,则是一组通过某种意义或目标彼此相关的任务。 但是公司不仅对加速执行这些任务中的每一个感兴趣,而且对尽快完成整个项目任务清单并获得结果感兴趣。

解决方案也很简单,并且又被其他人窥视了- 在项目结束时积累并支付部分计件工资 。 我们决定与我们一起成为20%。 在项目进行期间,程序员每小时会收到480卢布,而在项目结束时每小时会收到剩余的120卢布。

好吧,一切似乎都经过了计算和考虑,有必要开始测试操作。

第一步是更改程序员的业务流程
1.现在,任务的设置不应由表演者个人来决定,而应由领导者来决定;
2.我现在必须在几个小时内评估每个任务;
3.在接受和评估之后,任务就可以执行了。

好的,业务流程已更改,需要自动化 。 为了获得更大的创作自由,我们停止使用作业和备忘录(每个人都使用它们),然后我们在1-2天内想到并为自己制作了两个新物体:
1.向IT部门提出的申请,其中包含我们评估所需的所有必填字段;

2.具有相同评估系统的简化项目和任务核算系统。

然后,他们立即制作了一份报告,以小时为单位显示了输出结果以及所赚的钱,以便程序员每天都能看到他们的结果。

开始工作,立即面临困难- 程序员开始抱怨任务评级太低 。 “我需要考虑一下,”“但是我从来没有遇到过处理过程,我需要对其进行梳理,”“我曾经做过一项自动任务,是否有阅读说明?” 等

我听了他们的话,然后开始思考这个问题的哲学深度: 公司应该为员工购买知识付出代价吗?

答案似乎很明显-应该。 但这一切如此明显吗? 原来如此。

这是一个程序员的任务-在帐户003的过帐中填写仓库子帐户(由于某种原因,在典型的软启动器中未填写)。 但是他既不知道如何处理,也不在承包商一方,也不在处理器一方。

似乎-坐下来弄清楚什么总是如此。 在传统的薪资系统中,当您在附近p薪时,雇主将为您支付时间。

但这不是那么简单。 在这四个人(三个程序员+我,负责人)中,两个人精通处理,任务交给了一个不懂的人。 我们什么时候了解回收的? 程序员是最后的工作,我在目前的位置,因为 以前没有收费/回收做法。 事实证明, 目前的公司已经为此能力付出了代价 。 似乎第二次支付,至少是相同的金额,是错误的。 现在需要做什么? 是的,将能力转移给接受任务的人。

另一个问题出现了-能力的承运人需要什么呢? 他也有计件工资,他将不做知识转移,而是会做更多更好的工作。

我开始思考一个甚至更多的哲学问题: 公司应该为员工之间的能力转移支付费用吗? 传统上,知识转移是理所当然的。 但是我们都知道,这种转移的质量还有很多不足之处。 适应和指导程序是个例外,但是它们不是很常见。

因此,解决方案对我们来说显而易见:
1.转让知识和互相帮助必须付出;
2.为了获得新的能力,必须付出代价。

第二点是团队没有的知识。 例如,我们的任务是使用对MS SQL的直接查询,将数据从外部系统不断提取到1C中。 这项任务并不困难,但以前没有人做过。 我这样做了-我代表我制作了一个应用程序,其本质是在足以解决特定问题的水平上使用外部数据源。 评估任务-1小时(您至少可以坐一整天)。

解决问题的结果是,我们得到了可以解决外部数据源问题的专家, 并且我们不会为此能力付出更多 。 仅用于将其转移给其他程序员。

我们决定为能力和互助的转移支付费用,为此,我们提出了一个适当的术语-分析和设计成本。 为了不浪费时间在庞大的官僚机构上,我们在Word中绘制了一个表格,其中包含以下数据:
1.讨论/设计/提到的问题;
2.讨论的开始和结束时间,精确到分钟;
3.参与者。

单独的文件已添加到会计系统,每周讨论一次,使讨论的结果进入其中。 通常讨论时间为5分钟 ,有时为15分钟。 一周的时间总共3-5个小时

重要的是: 讨论时间已付给所有参与者 ,即 获取和传播知识都是有益的。 帮助同事是有益的,因为 人类法律并没有消失-如果您有所帮助,那么它们将为您提供帮助;如果您自己掌握知识,那么就可以做好准备,面对大约1个小时的陌生任务,静坐2天。 当然,当我本人从参加者名单中删除坐着并数着乌鸦的那个人时,也有例外。

是的,所有这些会议都应该在我在场的情况下举行,因为 在进入外界之前,我负责系统的质量。 讨论的所有问题都反映在系统中,如果有必要,可以返回并查看钱是否合法使用。

还有一个“烂”的问题-技术支持 。 犯规-因为我不喜欢可用的技术支持,所以它使用户的头脑变钝,浪费了宝贵的专家时间,却没有给公司带来特殊利益。

正式而言,当时的技术支持是专门的值班人员,应在一周内为人们提供帮助。 支付给技术支持程序员的薪水多少?

最初的想法是根本不付工资,而是在计算工资时减少计算工资的基础。 例如,如果程序员的薪水为60 tr,一个月花了2个星期在技术支持上,那么在计算时,应考虑将薪水的一半定为30 tr,并在其余时间内考虑一笔交易。

但是,很明显,现在正在胡说八道-公司规模不大,客观上技术支持并不需要一整天。 因此,程序员设法解决问题,并且可以以“混蛋”使用该方案。

有一种更容易的解决方法-计算每天有多少时间来自最佳员工的技术支持 ,并向程序员支付相同的费用。 因为 我被认为是这个团伙中最好的,然后我对自己进行了测量。 我在秒表的支持下呆了几天,目的不是要抹鼻涕,而是要迅速帮助人们。 将他们的问题正确地重定向到任务。 如果某人尚未阅读说明,并且需要就周围所有人的知识进行在线培训,请提供这些说明的链接。 好吧等等

根据测量结果,事实证明, 技术支持平均每天需要2个小时 。 嗯,就是这个数字。 我们同意将这笔钱支付给值班主任-每天2个小时,或每周10个小时。

显然仅从事技术支持是无利可图的,这大约是每月25,000卢布。

为了使值班员不会感到无聊,我们给了他一张纸,让他写下了所有与他打交道的人-只是他的姓氏。在会计系统中,创建了一个凭证,当日服务员将所有“兑换”都带进来。为什么-请看文章结尾处“不错的奖金”标题下的内容。

实际上,图片是在此基础上形成的,我们继续进行系统的测试操作

在程序员中,前所未有的热情。紧紧抓住任务,烟雾execution绕在执行处。

一位程序员默默地开始工作,他曾经喜欢讨论“多么艰巨的任务,有很多陷阱”,他可能会花数小时来吸纳这些陷阱,以自己的价格来填补(但不清楚,为什么-薪水)。

程序员立即开始提供最佳解决方案,他们曾经喜欢坐几个小时并“思考最佳解决方案”,因为现在最佳解决方案是由团队在5分钟内集思广益发布的。

一个性格内向的程序员开始与客户进行更多的交流,因为他很尴尬地与客户交谈,他们可以将已经解决的任务搁置两天。

由于程序员开始为他们的设计提供帮助,用户出现了许多更明智,高质量的任务。

曾经因为“不方便分心”而常常害羞地问同事一个问题的新手程序员会一次又一次地生气(愚蠢的)(我必须说,他们以前真的很生气)。

程序员变得充满激情和贪婪,从字面意义上讲。作为一个领导者,我实现了我的目标-系统开始工作,尽管没有我,但是在我最少的参与下,该系统开始工作。

我的参与变得透明且可以理解,这只是业务流程中的要点:
1.接受和评估任务,我每天进行一次,持续约15分钟;
2.参加有关分析和设计的会议(这是每天3次,每次5分钟)。

总共要管理三个程序员-每天30-60分钟。没人需要踢,跟随执行和时间,激励,检查质量- 一切都是自己完成的。我可以通过系统随时查看结果。这并不是说事实证明这是完全的自治,但是我们离它越近越好。

我们进行了3个月的测试操作。在此期间,手表产量增加了一倍,并且为新动机计算的薪水增长了30%。区别很明显- 现在必须计算工资。根据程序员自己的看法,他们以前从未在任何地方进行过如此密集的工作。这是激烈的,而不是长久或长久的-我总是每天工作超过8小时。

但是这里重要的不是他们所说的关于工作强度的内容,而是他们怎么说的方式。他们为自己自豪地讲话。不仅因为新系统使他们的工作效率更高,还因为他们自己是该系统的作者。他们自己提高了工作效率,他们自己的工作变得透明和可衡量,他们对公司,经理和员工的看法也有所不同。

我对成功的解释如下:
1.如果您从动机系统发展的角度出发,很显然我们已经很好地定义了产品。产品是解决的任务。已为此产品支付了明确的费用。其他一切-自费(反射,互联网,即时通讯工具中的通讯,冒烟、,、沮丧等)。
2.如果您通过自我管理来查看开发过程,则可以看到该系统是在工作人员的直接参与下创建的。
3.根据控制要求,我们尽可能地对系统进行了测量。仅仅对执行的工作进行测量就可以使人们更快地行动并且不会胡扯。

在测试操作之后,我经历了几次保护新系统的迭代:人事总监,财务总监,董事,所有者,外部人事顾问(莫斯科,这很有名)。每个人都喜欢这个系统。

作为人力资源顾问的发展负责人,我对人力资源顾问的观点特别感兴趣,因为他非常了解世界惯例,并且已经完成了数百个开发动机系统的项目。事实证明,他对我的系统的评价很高,他特别喜欢防御的轮廓(“记住”并限制了最高支出)。

.


, , , .. , . , , , .

, , . ., , , .

我们还了解到,那些总是抱怨“不参与我们活动”的人会花费40%的钱用于自动化。

有趣的是,没有主机的项目每个月的预算都在增长(例如,主管说这是使这项服务实现自动化,并且自动化没有在任何地方运行,但是他们必须自己编写任务,并且会四处走动) 。

可贵的是战略会议上的报告,结果令人失望- 公司花在无意义的自动化上的资金超过一半。无意义是一个完全有意义的特征。例如,该功能已开发,没有注释,但没有使用(“是的,所有手都无法触及”)。或旨在通过更改指标的值来帮助改善管理过程的功能-指标的值要么停滞不前,要么恶化(在项目开始之初,据说这对您没有帮助,您有另一个问题)。

结果如何?他们开始更频繁,更仔细地听取我们的意见,尤其是在工作开始之前。因为我们现在能够预测项目的结果,所以不仅依靠系统的思想,而且还依靠数字的统计。尽管“无意义”的结构有所改善,但最初几个月中无意义的工作量减少到30%。但这是另一个故事。

聚苯乙烯


有些人重复了我的经验-嗯,就是说,他们还基于某些标准时间建立了管理和激励系统。他们说他们做得很好。虽然,谁承认...

我不认识你,但是我很愚蠢。如果我没记错的话,这篇文章中描述的经验大约发生在4年前。然后,我发现了这种混乱的情况-更确切地说,我是通过买卖购买了一本书-被带走了,但是我放弃了所有旧的东西。因为很傻

您始终不希望思考,而是想接受总结。 Scrum,PMBOOK,CORE PM,看板,CBT或其他“实施”,或更时尚的是“实施”。还有一些混蛋,例如Scrum指南开发人员,也通过说“如果您用错误的方式来做,那么您不必害怕”之类的事情,加剧了这种情况。尽管他们自己在书中写道,您需要自己思考。

, , . , . , - . , , . , . , . .

? ? , , 1.

Source: https://habr.com/ru/post/zh-CN434254/


All Articles