推动文化变革通过软件选择

4分钟阅读 2020年11月20日

这微博让我想到改变,软件工程师(特别是,平台团队)可以驱动整个企业文化变革。

首先,我们来看这个问题。你想改变你的公司的工程值表示。你不只是想创建一个重量级的过程(你的签到失败,如果你没有达到X代码覆盖率,例如),你想让工程师开始值足够这些东西,他们不需要一个过程来执行。

我推动,看着文化变革发生的次数足够多的知道如何去做高级领导的位置。你改变你奖励和关注,并重复这一变化,人们自然就会开始改变他们的观点(或,有时,离开)。如果你把所有的注意力和注意力集中在稳定的新项目和把你的优先次序,花时间赞美团队提高其稳定性,促进工程师完成项目相关的稳定,更为关键的是,设定优先考虑的目标为你的团队工作稳定,你的文化将从优先考虑新项目优先稳定。

这是一个强大的力量,但它是缓慢的,更糟的是,它可以有负面影响。你不希望球队害怕尝试新事物,因为担心他们会处罚缺乏稳定性,例如。如果你矫枉过正的感知文化差异,你可以最终追逐否则伟大的工程师相信他们的技能不再想要或价值,因为他们不再有一个重要的技能。所以试图让您的团队改变他们的技术方法纯粹通过文化焦点并不总是最好的方法。

然而,还有另一个杆可用尤其是平台开发人员。这是产品功能的杠杆。

我从来没见过一个工程师不偶尔copy-paste-modify一些代码。我最早的专业软件的教训之一是,当你建立了一个完整的测试代码,其他工程师可能会对他们的代码编写测试,因为会有很多例子如何测试。这概括了观察,人们最有可能采取现有的东西并调整到一个新的东西,他们需要什么,在这个过程中,他们将从现有的好的和坏的。所以,如果你想让他们遵循最佳实践,把它放在他们的模板开始。

建立一个服务。如果你开始只有一个系统运行一个简单的web服务器,您可能也经过努力建立指标和监控和healthcheck,但你也可能会觉得你很忙,你只是想完成你必须编写的代码。另一方面,当你开始与服务框架,已经建立了度量和监控和healthcheck,你更有可能做一点工作至少让那些温和的有用。这是其中的一个见解,Dropwizard当天给我回:整合前的东西,你真的需要运行一个服务从一开始就意味着您的服务是更好的。

平台开发人员这几天得到这个。你现在的基础设施软件的盒子与内置的可观测性挂钩。我们都可能更适应的基础上创建可靠的软件,因为我们的工具把它从一开始,我们没有文化大革命的必要。

我们可以进一步比可观测性。安全可以是一个过程,或一个文化价值,但你也可以通过提供工具和平台,具有良好的安全实践的,所以你不依赖您的开发团队的好公民。测试通常是受到运行测试的开销,和投资基础设施,使得测试容易和快速运行支持的文化是很重要的软件质量验证。

这是说所有的开发人员更多的权力比他们想象的改变周围的工程文化。当您构建软件,别人会使用或你的同事工作,你方便他们做正确的事?如果你建立平台,烤的简单集成软件你想看到的值。如果你在这个职位选择新工具,选择那些支持你想要的标准认真对待。你编写代码,方便其他人将复制粘贴你所做的事再做正确的事。

喜欢这篇文章吗?你会喜欢我的书,经理的路径,可以在亚马逊和Safari在线!

Baidu