管理程序员团队:如何以及如何正确地激励他们? 第二部分

座右铭:
丈夫看着脏兮兮的孩子,对妻子说:好吧,我们是把这些孩子洗掉还是生个新孩子呢?

下面是我们的团队负责人以及 RAS 产品开发总监 Igor Marnat 撰写的文章的第二部分,内容是关于激励程序员的特殊性。 文章的第一部分可以在这里找到 - habr.com/ru/company/parallels/blog/452598

管理程序员团队:如何以及如何正确地激励他们? 第二部分

在文章的第一部分,我触及了马斯洛金字塔的两个较低层次:生理需求、安全需求、舒适性和持久性,然后进入下一个第三层,即:

III - 需要归属感和爱

管理程序员团队:如何以及如何正确地激励他们? 第二部分

我知道意大利黑手党被称为“Cosa Nostra”,但当我知道“Cosa Nostra”如何翻译时,我印象非常深刻。 “Cosa Nostra”从意大利语翻译过来的意思是“我们的事业”。 名字的选择对于动机来说是非常成功的(我们抛开职业,在这种情况下我们只对动机感兴趣)。 一个人通常想成为团队的一员,做一些大的、共同的、我们的事情。

陆军、海军和任何大型准军事部队非常重视满足归属感和爱的需要。 正如我们所见,在黑手党中。 这是可以理解的,因为你需要强迫那些没有什么共同点的人,他们最初并没有组成一个志同道合的团队,他们是通过征兵(非自愿)聚集在一起的,他们有不同的教育水平,不同的个人价值观,冒着生命危险,真正将自己的生命奉献给某个共同的事业,将自己的生命托付给战友。

这是一种非常强烈的动机;对于大多数人来说,感觉自己属于更大的事物,知道自己是家庭、国家、团队的一部分,这是极其重要的。 在军队中,制服、各种仪式、游行、游行、旗帜等等都是为了这些目的。 对于任何团队来说,大致相同的因素都很重要。 符号、企业品牌和企业色彩、用具和纪念品都很重要。

重要的是,重大事件有其自己的可见体现,可以与之相关联。 如今,公司拥有自己的商品、夹克、T 恤等已成为常态。 但强调公司内部的团队也很重要。 我们经常根据发布结果发布 T 恤,并将其赠送给所有参与发布的人员。 一些事件、联合庆祝活动或整个团队的活动是激励的另一个重要因素。

除了外部属性之外,其他几个因素也会影响团队的归属感。
首先,存在一个每个人都理解并对其重要性进行评估的共同目标。 程序员通常希望了解他们正在做一件很酷的事情,并且他们作为一个团队一起做这件很酷的事情。
其次,团队必须有一个整个团队都在场且仅属于该团队的沟通空间(例如,在 Messenger 中聊天、定期团队同步)。 除了工作问题之外,非正式的沟通,有时对外部事件的讨论,轻松的闲聊——所有这些都创造了一种社区和团队意识。
第三,我要强调在团队中引入良好的工程实践,以及与公司接受的标准相比提高标准的愿望。 实施行业内接受的最佳方法,首先在团队中,然后在整个公司中,让团队有机会感觉到自己在某些方面领先于其他人,引领潮流,这会产生一种归属感到一个很酷的团队。

归属感还受到团队参与规划和管理的影响。 当团队成员参与讨论项目目标、工作计划、团队标准和工程实践以及面试新员工时,他们会产生参与感、共同主人翁感和对工作的影响力。 人们更愿意执行自己做出和表达的决定,而不是别人提出的决定,即使这些决定实际上是一致的。

生日、周年纪念日、同事生活中的重大事件——联合披萨、团队赠送的小礼物都会给人一种温暖的参与感和感激之情。 在一些公司,习惯上会为在公司工作了5年、10年、15年的人颁发小型纪念牌。 一方面,我不认为这对我取得新成就有太大的激励作用。 但显然,几乎所有人都会因为没有忘记他而感到高兴。 这是一种事实的缺乏会让人沮丧,而不是事实的存在会让人兴奋。 同意,如果 LinkedIn 在早上提醒您并祝贺您在工作地点成立 10 周年,但公司里没有一个同事祝贺您或记得您,那可能会很遗憾。

当然,很重要的一点是团队构成的变化。 很明显,即使团队中某人的到来或离开是提前宣布的(例如,在公司或团队通讯中,或者在团队会议上),这并不能特别激励任何人取得新的成就。 但如果有一天你在你身边看到一个新人,或者没有看到一个旧人,这可能会是一个惊喜,如果你离开,那就完全不愉快了。 人不应该悄无声息地消失。 尤其是在分布式团队中。 尤其是当你的工作依赖于另一个办公室的同事突然出现并消失时。 这样的时刻绝对值得提前单独通知团队。

一个重要因素,英文称为 所有权 (“占有”的直译并不能完全反映其含义)。 这不是一种所有权的感觉,而是一种对你的项目的责任感,当你在情感上将自己与产品以及产品与你自己联系起来时的感觉。 这大致对应了电影《全金属外壳》中海军陆战队员的祈祷:“这是我的步枪。 这样的步枪有很多,但这一把是我的。 我的步枪是我最好的朋友。 她是我的生命。 我必须学会像拥有自己的生活一样拥有它。 没有我,我的步枪就没用了。 没有步枪我就一无是处。 我必须把步枪打直。 我必须比试图杀死我的敌人更准确地射击。 在他向我开枪之前,我必须先向他开枪。 就这样吧……”。

当一个人长期致力于一个产品,有机会对它的创造和发展承担全部责任,看到一个可以工作的东西如何从“无”中产生,人们如何使用它时,这种强大的感觉就会产生。 长期在一个项目上合作的产品团队通常比短期组建、以流水线模式工作、从一个项目切换到另一个项目、不对整个产品承担全部责任的团队更有动力和凝聚力。 , 从开始到结束。

四. 需要认可

一句善意的话也会让猫高兴。 每个人都受到对自己所做工作重要性的认可及其积极评价的激励。 与程序员交谈,定期给他们反馈,庆祝他们出色的工作。 如果您有一个大型且分散的团队,定期会议(所谓的一对一)非常适合此目的;如果团队很小并且在本地合作,则通常会在日历上没有特别会议的情况下提供此机会(尽管定期会议)一个就够了,仍然需要,你可以少做一些)。 manager-tools.com 上的经理播客详细介绍了这个主题。

然而,值得牢记文化差异。 美国同事熟悉的一些方法并不总是适用于俄罗斯的方法。 对于来自俄罗斯的程序员来说,西方国家团队日常沟通中所接受的礼貌程度最初似乎有些过高。 俄罗斯同事的一些直率特征可能会被其他国家的同事视为粗鲁。 这对于跨种族团队的沟通非常重要;关于这个主题已经有很多文章;这样一个团队的经理必须记住这一点。

功能演示(程序员展示冲刺期间开发的功能)是实现这一需求的良好实践。 除了这是一个畅通团队之间沟通渠道、向产品经理和测试人员介绍新功能的绝佳机会之外,它也是开发人员展示其工作成果并表明其作者身份的好机会。 好吧,当然,还要提高你的公开演讲技巧,这永远不会有害。

在联合团队聚会上用证书、纪念牌(至少是一句善意的话)来庆祝特别杰出的同事的重大贡献是一个好主意。 人们通常非常看重这样的证件和纪念牌,搬家时随身携带,一般都会百般爱护。

为了标记对团队工作更重要、更长期的贡献、积累的经验和专业知识,经常使用等级制度(同样,可以与军队的军衔制度进行类比,此外,以确保从属关系,也可达到此目的)。 年轻的开发人员通常会加倍努力才能获得新星(即从初级开发人员转变为全职开发人员等)。

了解员工的期望至关重要。 有些人更有可能受到高等级的激励,即被称为建筑师的机会,而另一些人则相反,对等级和头衔漠不关心,并认为加薪是公司认可的标志。 与人们沟通,了解他们想要什么以及他们的期望是什么。

通过给予更多的行动自由或参与新的工作领域,可以表现出对团队的认可和更高水平的信任。 比如,一个程序员在获得了一定的经验,取得了一定的成果之后,除了按照规范实现自己的功能之外,还可以从事新事物的架构工作。 或者涉足可能与开发不直接相关的新领域——测试自动化、实施最佳工程实践、帮助发布管理、在会议上发言等。

五、认知和自我实现的需要。

许多程序员在人生的不同阶段专注于不同类型的编程活动。 有些人喜欢进行机器学习,开发新的数据模型,为了工作阅读大量科学文献,并从头开始创造新的东西。 另一种更接近于调试和支持现有应用程序,其中您需要深入挖掘现有代码、研究日志、堆栈跟踪和网络验证码数天或数周,并且几乎不编写新代码。

这两个过程都需要大量的智力努力,但它们的实际产出是不同的。 人们相信,程序员不愿意支持现有的解决方案;他们更愿意开发新的解决方案。 这其中不乏智慧。 另一方面,我合作过的最积极、最团结的团队致力于支持现有产品,在支持团队联系他们后发现并修复错误。 这些家伙确实是为这项工作而生,并准备在周六和周日外出。 我们曾经急切地处理过另一个紧急而复杂的问题,要么是31月1日晚上,要么是XNUMX月XNUMX日下午。

有几个因素影响了这种高积极性。 首先,它是一家在行业内享有盛誉的公司,团队与其有联系(参见“联系的需要”)。 其次,他们是最后的前沿,他们后面没有人,当时没有产品团队。 他们和客户之间有两个层面的支持,但如果问题到达他们那里,他们就无处可退,没有人在他们身后,整个公司都在他们身上(四位年轻程序员)。 第三,这家大公司拥有非常大的客户(国家政府、汽车和航空企业等),并且在多个国家拥有非常大规模的设施。 结果,总是复杂而有趣的问题,简单的问题都是靠前几级的支持来解决的。 第四,团队的积极性很大程度上受到与之互动的支持团队的专业水平的影响(有非常有经验和技术能力的工程师),我们始终对他们准备的数据的质量、他们进行的分析充满信心, ETC。 第五,我认为这是最重要的一点——球队非常年轻,所有的人都处于职业生涯的初期。 他们有兴趣研究大型而复杂的产品,解决新环境中新的严重问题,他们寻求专业地匹配周围团队、问题和客户的水平。 这个项目结果是一所优秀的学校,后来大家都在公司取得了不错的职业生涯,成为了技术领导者和高级经理,其中一个家伙现在是亚马逊网络服务的技术经理,另一个最终跳槽到了谷歌,而所有他们中的一些人仍然对这个项目记忆犹新。

如果这个团队由拥有 15-20 年经验的程序员组成,那么动机就会不同。 当然,年龄和经验并不是100%的决定因素;这完全取决于动机的结构。 在这个特殊的案例中,年轻程序员对知识和成长的渴望产生了极好的结果。

一般来说,正如我们已经多次提到的,您必须了解程序员的期望,了解他们中的哪些人希望扩展或改变他们的活动领域,并考虑这些期望。

超越马斯洛金字塔:结果可见性、游戏化和竞争,没有废话

关于程序员的动机,还有三个更重要的点肯定需要提及,但将它们纳入马斯洛的需求模型就太人为了。

首先是结果的可见性和接近性。

软件开发通常是一场马拉松。 研发工作的成果会在几个月甚至几年后显现出来。 去到一个远远超出地平线的目标是很困难的,工作量是可怕的,目标很远,不清晰,不可见,“夜色漆黑,充满恐怖”。 最好把通向它的路分成几段,开辟一条通向最近的那棵看得见、可达、轮廓清晰、离我们不远的树的路——然后向这个近在咫尺的目标走去。 我们希望付出几天或几周的努力,获得并评估结果,然后继续前进。 因此,值得将工作分解为小部分(敏捷中的冲刺很好地服务于这个目的)。 我们已经完成了部分工作——记录它、呼气、讨论它、惩罚有罪者、奖励无辜者——我们可以开始下一个循环。

这种动机在某种程度上类似于玩家完成电脑游戏时的体验:他们在完成每个级别时定期获得奖牌、积分、奖金;这可以称为“多巴胺动机”。

同时,结果的可见性也非常重要。 列表中已关闭的功能应变为绿色。 如果代码写好了、测试了、发布了,但是程序员可见的视觉状态没有变化,他就会感觉不完整,不会有完成感。 在我们的版本控制系统的一个团队中,每个补丁都会经历三个连续的阶段——构建构建并通过测试,补丁通过代码审查,补丁被合并。 每个阶段都用绿色勾号或红色十字在视觉上标记。 有一次,一位开发人员抱怨代码审查时间太长,同事需要加快速度,补丁挂了好几天。 我问,这对他来说实际上改变了什么? 毕竟,当代码写好、构建完成、测试通过时,如果没有注释的话,他不需要关注发送的补丁。 同事们自己将审查并批准它(如果没有评论的话)。 他回答说:“伊戈尔,我想尽快得到我的三个绿色勾号。”

第二点是游戏化和竞争。

在开发其中一款产品时,我们的工程团队的目标是在其中一款开源产品的社区中占据显着位置,进入前三名。 当时,没有客观的方法来评估某人在社区中的知名度;每个大型参与公司都可以声称(并定期声称)自己是第一贡献者,但没有真正的方法来比较参与者的贡献之间,及时评估其动态。 因此,没有办法为团队设定一个可以在某些鹦鹉身上衡量的目标,评估其成就程度等。 为了解决这个问题,我们的团队开发了一种工具来衡量和可视化公司和个人贡献者的贡献 www.stackalytics.com。 从动机的角度来看,这只是一枚炸弹。 不仅仅是工程师和团队不断监控自己的进步以及同事和竞争对手的进步。 我们公司的高层管理人员和所有主要竞争对手也以 stackalytics 开始了他们的一天。 一切都变得非常透明和可视化,每个人都可以仔细监控自己的进度,与同事进行比较等。 工程师、经理和团队设定目标变得方便快捷。

在实施任何定量指标系统时出现的一个重要问题是,一旦实施了它们,系统就会自动优先考虑实现这些定量指标,从而损害定性指标。 例如,完成的代码审查数量被用作指标之一。 显然,代码审查可以通过不同的方式完成,您可以花几个小时对复杂的补丁进行彻底的审查和检查,检查测试,在您的工作台上运行它,检查文档,并在您的业力中获得加一次审查,或者在几分钟内盲目点击几十个补丁,给每个补丁+1,并获得+1的业力。 有一些滑稽的例子,工程师点击补丁的速度如此之快,以至于他们给 CI 系统的自动补丁+XNUMX。 正如我们后来开玩笑说的:“走吧,走吧,詹金斯。” 就提交而言,也有很多人使用代码格式化工具检查代码,编辑注释,将句号更改为逗号,从而增强了他们的业力。 处理这个问题非常简单:我们使用常识,除了定量指标之外,还使用基本的定性指标。 团队工作成果的利用程度、外部贡献者的数量、测试覆盖水平、模块和整个产品的稳定性、规模和性能测试的结果、接受核心评审者肩负的工程师数量绑带、项目被纳入核心项目社区的事实、是否符合工程流程不同阶段的标准——所有这些和许多其他因素都必须与简单的定量指标一起进行评估。

最后,第三点——不废话。

开发人员都是非常聪明的人,并且在他们的工作中非常有逻辑性。 他们每天花费 8-10 小时构建长而复杂的逻辑链,因此他们可以即时发现其中的漏洞。 在做某事时,他们和其他人一样,想了解为什么要做这件事,以及哪些方面会变得更好。 您为团队设定的目标必须诚实且现实,这一点极其重要。 试图向编程团队推销一个坏主意是一个坏主意。 如果你自己都不相信一个想法,或者在极端情况下,你没有不同意和承诺的内部状态(我不同意,但我会这么做),那么这个想法就是糟糕的。 我们曾经在一家公司实施了一个激励系统,其中一个要素就是提供反馈的电子系统。 他们投入了很多钱,带人去美国培训,总的来说,他们投入得很充分。 有一次,在培训结束后的谈话中,一位经理对下属说:“这个想法不错,看起来可行。 我自己不会给你电子反馈,但你可以把它给你的员工并要求他们提供。” 就这样,没有什么可以进一步实施了。 当然,这个想法最终没有结果。

来源: habr.com

添加评论