Bringing in a ringer (or, "How to work with specialists")

It's a great way to share specific skill sets across an organization. But it comes with its own set of challenges.

Dan Radigan Dan Radigan

最も効果的なアジャイルチームは、重複しない多様なスキルセットを持つ 5 ~ 7 人の少数精鋭です。このような構成でこそ、さまざまな能力を活かした緊密な信頼関係を築き、業務遂行を加速できます。ただし、プロジェクトに必要なスキルセットがチームに不足していることもあります。

そのようなときはアジャイルスペシャリストの出番です。

ジェネラリストとスペシャリスト

仕事仲間は通常、ジェネラリストとスペシャリストのいずれかに分けられます。この 2 つの違いはどこにあるのでしょうか?

  • Generalist – a person with a broad knowledge that can work in a number of different areas
  • Specialist – a person who has a deep and unique knowledge of a particular area of focus

多くのアジャイル手法では、すべてのチームメンバーがジェネラリストになることを推奨しています(その理由については、アジャイルチームに関する記事をご覧ください)。ただし、ときには、次の理由でスペシャリストの助けを借りることもあります。

  • 特定のスキルセットがフルタイムでは必要とされていない
  • 特定のスキルセットを持つ社内の人材が限られており、複数のチームで共有されている
  • 一般チームが対応できない分野での作業に特別な許可が必要である

このような場合、一定期間、スペシャリストをチームに加えるのは合理的です。ただし、チームにスペシャリストが加わることで、いくつかの課題が生じます。 

スペシャリストに関する課題の認識

スペシャリストは一定期間のみチームに参加するため、たちまち「クリティカルパス」となり、チーム全体の進行を妨げることがあります。例えば、チームが新しいコードを展開するためにデータベースに変更を加えるにはデータベース管理者に依頼する必要がある場合、データベース管理者がチームの進行の障害となります。スペシャリストからの情報を必要とするため作業を進行できなければ、その作業の流れは止まります。スペシャリストはチーム内で唯一のスキル保持者であるがゆえに、チームはスペシャリストが障害を解消するまで待つしかありません。

スペシャリストはコンテキスト切り替えを何度も行い、プロジェクトによって作業量が増減します。プロジェクト間での切り替えは大変です。スペシャリストがコアチームメンバーのようにプロジェクトについて詳しい知識を持つことはほとんどありません。その結果、スペシャリストは重要な詳細を見落とす恐れがあります。このリスクを低減するため、コアチームはスペシャリストに最新情報を提供することに余計なエネルギーを費やす必要があります。

スペシャリストとの作業のためのヒント

スペシャリストとの作業に伴うリスクを低減するための 3 つのヒントを見ていきましょう。 

1. スペシャリストに求めることを明確に定める

スペシャリストの助けを借りる必要があるとわかったら、時間をとって何が必要なのかを正確に把握しましょう。作業のタイプと必要な知識の深さをはっきりさせます。そのようにすることで、チームに適切なスペシャリストを迎え入れ、スペシャリストとチームが作業を成功させるのに十分な時間を確保できます。スペシャリストに必要な時間とスキルが現実に沿っていないと、チームもスペシャリストも失敗することになります。 

2. スペシャリストの知識をコアチームに転移する

アジャイルチームにおいて重要なことは、スキルセットの重複です。スペシャリストはチームに参加している間に、自分が去ったときに専門知識が完全に失われることのない程度までコアチームにトレーニングを施します。そのためには次のような方法が効果的です。

  • Pair programming – Pair programming involves two or more team members working together in real time on a specific area of the project. Both people can ask questions and engage in the work.
  • Code review – In code review, a core team member will review work completed by the specialist to understand all changes. Code reviews focus more on why then how, making them less effective than pair programming for training.
  • ブラウンバッグ – ブラウンバッグとは、スペシャリストが集団に知識を伝えるセッションです。チーム全体の教育を効率的に行うことができます。

ゴールはチームに自律性をもたせることです。知識移転により、これまではスペシャリストが担当していた分野のコンテキストをコアチームに与え、将来のスペシャリストへの依存を軽減します。

3. スペシャリストの継続的な必要性を最小化する

チームでのスペシャリストの活動が段階的に縮小するのに伴って、チームとスペシャリストの間でのサービス水準合意を設定することが重要です。チームがスペシャリストの力を借りる必要があるのはいつどのようなときかを決めます。スペシャリストの専門分野でよくある状況について概説する関連ガイドを作成しておくと、チームが自ら課題解決に取り組む際に役立ちます。 

Pro Tip:

At Atlassian, we focus on expanding skill sets for generalists. To take design out of the "specialist" category, for example, we've created tangible ways for developers and product owners to build their design skills. To learn more, check out our article on agile design