10x工程师:紫色开发人员

2020-12-27 12:09:16

什么使软件工程师高效?您可以列出属性,例如语言经验,科学思维方式,智慧,专注力,个性化的IDE设置。但是,以我的经验来看,最大的因素是:熟悉他们正在更改的代码库。

知道系统的功能和需要做的事情,这是绝对必要的,完全是上下文相关的。最简单的获取方法是创建它-即从头开始编写该软件。然后感觉完全自然。感觉不像知识,感觉像呼吸。感觉很明显。

当您拥有一个不错的系统思维模型时,很难与他人共享。您不知道多少。如果您是这张照片中的紫色显影剂:

那么您就拥有了该系统的心理模型,因为您已经建立了它。已向绿色和蓝色开发人员分配了帮助,但是由于他们不了解系统,因此他们无法更改系统。同时,您可能正在以足够快的速度更改系统,以至于无论他们多么聪明,他们都无法掌握它。 (我一直在他们的情况中。)解决方案是在系统上一起工作,并集中精力转移您的思维模式。在此之前,蓝色和绿色会妨碍您。

这张幻灯片是我的集体问题解决主题演讲的一部分(也称为Opera的起源)。之后人们来找我:“我们有一个紫色的开发人员。现在,我对变成蓝色或绿色并不感到难过”或“哦,不,我是紫色的显影剂!”

此图中的哪个开发人员的生产率是其他开发人员的十倍?紫色开发商!

没有“生产”的软件工程师,而是“在此代码库中具有生产能力”的软件工程师。传播知识,传播生产力。