最近,在我公司中,有人建议一位开发人员应该(仅一位)专注于一项功能。这意味着要像将开发人员置于正常的团队常规工作之外,再将其承担其他职责(会议等),而此人将是负责该功能(技术上明智)的“唯一”人员。
作为记录,我们在SAFe中使用SCRUM,并且每个团队都有专职开发人员,在我们两个团队(Android和iOS)之间共享质量检查和产品所有者。
尽管我同意这会在短期内提高生产率,但我有一种感觉(我认为我是在大学里学到的),这是一个不好的做法,原因有很多:
- 代码审查失去价值。
- 最少的知识共享。
- 风险增加。
- 失去团队灵活性。
我说的对吗,或者这不是一个坏习惯?
3
我的直接反应是,如果适度进行,这可能会奏效,但是如果问题太远,您对这些问题是正确的。另一方面,我的经验是,每个功能都已经拥有了一个事实上的所有者:最后一位花费大量时间进行该功能的人。
—
Ixrec 2015年
“ 一个开发人员应该专注(并且只有一个) ”-如果您想要SPOF,最好这样做。我最近制定了一种经验理论,认为在特定情况下您最需要的人(“ wtf?!?他为什么这样写? ”)通常恰恰是实际上绝对无法接触到的那个人。
—
JensG
@JensG:嗯,我有一个经验理论,我最需要的人(“ wtf?为什么他要这样写?”)就是我,因此“记住应该记录下来的东西”的主要因素当时”为0。当我被其他人阻止时,它会更值得注意,因为我对此感到烦恼,而不是根据自己的优点从头重新检查现有代码;-)
—
史蒂夫·杰索普
@SteveJessop:当然,试图通过检查一堆他们的代码KLOC,而客户骂你,他需要一个解决方案,重新设计思维的其他国家的人民路,现在(!要不然)可能对某些人一个很酷的想法,但我我还讨厌书呆子,以至于看不到任何浪费我时间的有趣事情,我可以花更多的钱去代替。
—
JensG 2015年
@JensG:幸运的是,我的客户比您的客户更善于社交。因此,我承受的压力不大,无法进行那种神奇的思考,而得出这样的结论:对我而言,真正重要的是,人们很难被我触及。因此,我认为您说的话中有一个玩笑的成分,因此,是的,我很讨厌发现一个有趣的情况,在这种情况下,您试图让周围的多个人记住它的工作原理,从而弥补了难以理解的代码。特别是因为这样的wtfs通常是我自己的愚蠢错误,而不是我的同事的错误。
—
史蒂夫·杰索普