最近、私の会社では、1人の開発者が1つの機能に集中する(そして1人だけ)ことが推奨されています。それは、開発者を通常のチームルーチンとは別に設定し、他の責任(会議など)から解放するようなものを意味します。この人は、テクノロジに関して「唯一の」責任を負います。
記録のために、SAFe内でSCRUMを使用し、チームごとにフルタイムの開発者がいて、2つのチーム(AndroidとiOS)の間でQAと製品所有者を共有しています。
これは短期的に生産性を高めることに同意しますが、多くの理由でこれは悪い習慣であると感じています(そして大学で学んだと思います)。
- コードレビューは価値を失います。
- 最小限の知識共有。
- リスクの増加。
- チームの柔軟性の喪失。
私は正しいですか、それとも悪い習慣ではありませんか?
3
私の当面の反応は、これが適度に行われればうまくいくかもしれないということです。しかし、それが行き過ぎた場合、あなたは問題について正しいです。一方、私の経験では、すべての機能には既に事実上の所有者がいます。つまり、多くの時間を費やした最後の人です。
—
Ixrec
「1人の開発者が集中する必要があります(1人のみ)」-SPOFが必要な場合は、そのようにすることをお勧めします。私は最近、あなたが特定の状況(「で最も必要人は旨を実証的理論策定WTF?!?なぜ彼がそのように書いたの?」)は、一般的に、実際に絶対に到達できない正確に一つです。
—
JensG
@JensG:まあ、私は私が最も頻繁に必要とする人(「wtf?なぜ彼はそのように書いたのですか?」)が私であり、そのように「書き留められるべきものを記憶する」ためのバス要因であるという経験的理論を持っていますそれは、他の誰かにブロックされたときにもっと注目に値します。なぜなら、既存のコードをゼロから再検討する代わりに、それ自体のメリットを再検討するのではなく;-)
—
スティーブジェソップ
@SteveJessop:もちろん、顧客があなたに今解決策が必要だと叫んでいる間(または他の!)無駄に時間を割いて面白いものを見るほどオタクではないので、代わりにもっと生産的に過ごすことができます。
—
JensG
@JensG:幸いなことに、私の顧客はあなたの顧客よりも社交的です。したがって、私にとって重要なことは本当に人々が私に到達しにくくなるという結論に至るような魔法の思考に従事するほどプレッシャーはありません。そのため、あなたが言ったことに冗談を言う要素があると思ったので、はい、私はあなたがそれがどのように機能するかを覚えている複数の人を引き留めようとすることによって理解できないコードを補うという面白い状況を見つけるのに十分オタクです。特に、そのようなwtfsは頻繁に私自身の愚かな欠陥であり、同僚のものではありません。
—
スティーブジェソップ