最近私の会社では、1人の開発者が1つの機能に集中する(そして1つだけ)ように提案されています。これは、通常のチームルーチンの脇に開発者を置き、他のいくつかの責任(会議など)を解放するようなものを意味し、この人は機能、テクノロジーに関して「唯一」の責任があります。
記録のために、私たちはSAFe内でSCRUMを使用しており、チームごとにフルタイムの開発者のために、2つのチーム(AndroidとiOS)の間でQAと製品所有者を共有しています。
これにより短期的に生産性が向上することに同意しますが、これは多くの理由で悪い習慣であると感じています(大学で学んだと思います)。
私は正しいですか、それともまったく悪い習慣ではありませんか?
私の20年間の経験では、コードの所有者に設計者間の責任をローテーションさせるか、少なくとも1組の所有者がいる方がよいでしょう。単一機能の所有権には次の問題があり、そのうちのいくつかはあなたが言及したものです。
機能の所有権は不可避であり、うまく機能することは良いことです。それは習熟の構築を助け、自律性を可能にします-2つ 一般に認められたエンゲージメントの柱 。誰がそのコードの説明責任を持っているかが明確になり、委任、通信、およびその他のたわごとを行うのに役立ちます。
しかし、あなたはそれについて話していません。あなたは1つの新しいチームを作ることについて話している-この人を残りのコードから切り離す。それは素晴らしいことではありません。それは彼らのキャリアを制限します。プロジェクト/会社にリスクを追加します。それは仲間に害を及ぼします。
したがって、これを悪い考えから遠ざけるために、ある程度の緩和が必要かもしれません。