暗黙の協調
このジレンマを乗り越える方法がある。オフショアでのソフトウェア開発について我々が過去に行った研究は、作業の規範や背景に関する共通理解といった暗黙の協調(tacit coordination)のメカニズムを使えば、直接のコミュニケーションがなくても協調が可能であることを示している。
この場合、他の従業員の行動を観察し、共有する規範に基づいて、他の従業員が今後何をし、何を必要とするかを予想することで連係がなされる。
これは、同期(synchronously)によって可能となる(たとえば、2人が同じグーグルドキュメントで同時に作業する)場合もあれば、非同期(asynchronously)によって可能となる(ドキュメントの受け渡しを明確化して、自分以外が作業をしている時に同じドキュメントは使わない)場合もある。
ソフトウェアを開発する組織ではこの解決法を採用することが多く、共有のリポジトリやドキュメントオーサリングツールを広く活用する傾向があり、それぞれの作業を一つにまとめていくシステム(たとえば、継続的インテグレーションやバージョン管理システム)を使っている。
しかし、ギットラボのやり方は、営利目的のセクターではかなり独特である。同社はコーディングだけでなく、組織そのものを機能させるために、広範囲にわたってこの暗黙の協調メカニズムに依拠しているからだ。
ギットラボでは従業員がさまざまなタイムゾーンで仕事しているため、特に非同期での作業が占める割合が大きい。そのため、同社ではビデオ会議も行われるが、ビデオ会議で1日が終わるような経験をする社員はほとんどいない。
ギットラボではどう協調しているか
ギットラボのプロダクト開発を推進するエンジニアリングの中心には、リナックスの生みの親であるリーナス・トーバルズが考案した「ギットワークフロー」がある。
このプロセスでは、コンピューターコードを書く担当プログラマーがコードを「フォークする」(コピーする)ため、他のユーザーを妨げることなく作業できる。作業後には「統合要請」を出して、古いバージョンを新しいものに置き換え、別の担当者が新しいバージョンを使えるようにする。
このプロセスは、分散化された非同期での作業が持つ可能性を、2つの構造と組み合わせている。協調が失敗するリスクを洗い出す構造と、決定権を明確にする構造である。
完全な電子化(これがリモートワークを可能にしている)と完全な文書化によって、このプロセスは、営利目的とオープンソースの両方におけるソフトウェアの分散開発のための重要な枠組みとなっている。
ギットラボでは、このギットワークフローをさらに一歩推し進め、曖昧さや不確実性を伴うマネジメント業務にも適用している。
たとえば、ギットラボのチーフ・マーケティング・オフィサー(CMO)は最近、1年先を見据えた同社の戦略に動画を組み込むビジョンの概略を示した。CMOは全従業員に対して、決められた期間内に非同期で、そのビジョンに関するフィードバックをするよう要請した。さらに、同期でのミーティングを1回実施して、ビジョンの最終版を成立させるに至った。
このビジョンを基に、複数の担当者が非同期で、ハンドブックに書かれているマーケティングのOKR(Objectives and Key Results:目標と主要な結果)に関連するページに追加修正し、最終版に統合した。