Yuichi Murata's Engineering Blog

グローバル・エンジニアリング・チームをつくる

免疫になるということ -- ネットワーク時代におけるマネージャーの役割の変化

f:id:yuichi1004:20210123160717j:plain

ピラミッドの時代からネットワークの時代へ

人類の長い歴史を通して、我々は組織をより大きくしたきた。我々は、組織を大きくするにつれて、より広い範囲のより複雑な問題を解決している。多くの組織は、多くの人々を連携しビジネスの目的を達成するためにピラミッド型の組織構成をあてがってきた。 今日では組織の形態は少し異なる形に進化を遂げている。よりネットワーク化している。そうインターネットのように。昔ながらの組織においても、純粋なピラミッド型はあまり見かけない。今日ではマトリクス型組織、ドットレポートライン(副指揮系統)、タスクフォース、プロジェクトチーム、はたまた労働組合と言った組織を見かける。複雑化する世界に適応するために、組織はネットワークへとその姿を進化させてきた。

自然とマネージャーの役割も変わりつつある。純粋なピラミッドの時代では、マネージャーはよき「ボス」であることが求められた。彼らはビジネスの目的や方向性をよく知っていた。部門の正しい目標を設定し、皆にそれを達成するよう支援をする。

ネットワーク時代のマネージャーの役割

ネットワーク時代のマネージャーの役割はどう変わるのだろうか。以前の役割はそのまま当てはまらない。ピラミッドのパラダイムは「トップダウン」だ。ネットワークにはトップもボトムもない。マネージャーは良きピラミッドビルダーではなく、ネットワークビルダーになる必要がある。

ネットワーク構造の弱みは「感染」である。ある細胞が感染したら、ネットワークを通じてどんどん広がってしまう。コンピュータウイルスがネットワークを通じて拡散する様を想像してほしい。ビジネス組織においては、人は様々な方法で感染してしまう。仕事の失敗で落ち込んでしまう者がいる。褒められない態度で嫌なムードを作ってしまうものがいる。組織の文化やゴールに合致しない考えを広げようとする者もいるかもしれない。これらの感染は誰かが適切に対処しなければネットワークを通じて広がってしまう。

マネージャーの役割は良き「免疫系」であることだ。彼らは健全なネットワークを維持するために対応する。マネージャーはこれらの感染症と戦うための様々な武器を持つ。マネージャーは人々をつなげて強固なネットワークを新たに作り上げる。マネージャーは評価を通じて組織の文化やゴールに向かう人々を抜擢し、一方でそれに矛盾しない多様性を認める。マネージャーは部下をケアしてやるきにさせる。免疫の存在こそが組織が生き残る鍵だ。

マネージャーとして良き免疫系になる

多くの組織は、ネットワーク型の組織への移行期にある。基本はピラミッドの形をしていて、ネットワークを味付けしていく。であるから、多くのマネージャーは未だに良きボスであろうと振る舞ってしまう。自分もよくそうしてしまう。 世界はネットワーク化している。マネージャーの本質的な役割もまさに変化しつつあるのかもしれない。マネージャーとして、我々は良きボスであろうとするよりも、よき免疫系になる必要がある。

原文:

yuichi-murata.medium.com

生産性を最大化し時間に遅れなくなる超シンプルなアプローチ

f:id:yuichi1004:20210116160359j:plain

プライベートな空間で生産性があがるタイプ

皆様リモートワークはお好きだろうか。これは人それぞれかと思う。自分はプライベートな空間のほうが集中できるタイプである。であるから、リモートワークは自分にとってタスクを遂行するには理想的な環境である。

問題は時たま集中しすぎて時間が経つのを忘れてしまうことだ。あまりにタスクに集中し、そのタスクにどれだけの時間を費やしたのかを気づけなくなってしまう。他にやることがあるのに特定のタスクに集中しすぎてしまうのだ。そしてもう一つ、より深刻な問題がある。アポイントメントを見落としてしまうのだ (大抵はオンライン会議だ)。タスクの実行に当たっては集中し生産的でありたいが、約束の見落としはいただけない。この課題を解決するいくつかのアプローチを試してみたのだが、とてもシンプルで効果的な解決方法を見つけたので紹介させてほしい。

超シンプルな解決策

それは、自分のスマホにサイレントアラームを以下のようにセットするものだ。アラームは 30 分毎に 1 分だけずらしてセットする。

f:id:yuichi1004:20210116160410p:plain

これはバカバカしいほどに単純な解決策だが、驚くことに時間の使い方にいくつもの効果が見られた。

時間に遅れるのを防ぐ

アラームが一分前に時間を知らせてくれる。これで、どれだけタスクに集中していたとしても時間を逃すことはなくなった。アラームは停止するまで鳴り続けてくれるので、見落としもない。

良きミーティング進行役になる

オンライン会議は簡単に延長戦に突入しがちだ。物理的な会議室と違って、次の会議予定者がプレッシャーをかけてくることもない。だれも会議を無理やり終了させてくれない。なので自分が代わりに良き進行役として会議を終了させなければならない。

このアラームはミーティング時間終了一分前を知らせてくれる。アラームをキャッチしたら、自分は簡単にミーティングの概要をサマリ、アクションアイテムを整理し、会議の終了音頭を取り、時間通りに終わらせることができる。

よりタスクにフォーカスできる

ポモドーロ・テクニックというものをご存知だろうか?このテクニックはある一定のインターバルで仕事をすることによってより集中力を高めてくれるというものだ。

  • 25 分タスクに集中する
  • 5 分短い休憩を取る

30 分インターバルでセットしたアラームはこのテクニックを実施するのに単純だが効果的である。アラームが鳴ったら、どれだけタスクに集中していたとしても一旦手を止める。そして小休止を取る。 以前はポモドーロ・テクニックのためのインターバルタイマーを使っていたのだが、使うのが難しかった。会議に参加するときにタイマーを止めるのを忘れてしまうのだ。そして会議中にタイマーが鳴り出す。これは全くもって面倒であった。会議が終わりタスクを始めるときにタイマーをスタートするのを忘れてしまうこともあった。事前にセットされた 30 分間隔のアラームはこうした操作が一切必要にならないのだ。

週末に時間を無駄にするのを防ぐ

これらのアラームは週末であっても時間の経過を教えてくれる。テレビを見ていたり、ソファーに寝っ転がったり、SNS を見ていて時間を無駄にした経験がおありだろうか。アラームはこうした無駄にした時間を気づかせてくれる。特定のことに時間を使いすぎていたら、それに気がついて余計な時間を過ごすことをやめることができる。

人生を無駄にしないために時間をコントロールする

このシンプルなアプローチは自分の時間のコントロールを与えてくれた。平日は生産性を最大化し、週末には時間の使い方に気づきを与えてくれる。このちょっとしたチップスがあなたの生活の向上のヒントになると嬉しい。

原文:

yuichi-murata.medium.com

リモート・ファーストな今がグローバルなチームを作る格好のチャンス - Organization i18n

f:id:yuichi1004:20210110102530j:plain

仕事の変化

COVID-19 のパンデミック発生後、我々の生活は変わった。人々は自宅にとどまり、なるべく通勤を避けようとするようになった。これは我々の仕事の仕方も変えた。多くの企業がリモートワークを導入した。パンデミック以前から、リモートワークは IT 業界では特別なことではなかったが、多くのビジネスで主たる働き方ではなかった。今日、リモートワークは一般的になった。多くの企業がリモートワークを主たる働き方に採用した。IT 業界に留まらず、他の業界でも。リモートワークは従業員の健康面だけでなく、ビジネスの継続性の確保もできるからだ。

分散開発チームの課題

数年前、自分はあるプロジェクトを 2 つの拠点で連携して実行するプロジェクトに携わっていた。ちょうどその頃、新しい開発拠点を作っていたのだ。当時、新しい拠点のメンバーはかなり限られた人数にとどまっていた。それ故に、新しい拠点から参加する人数は少なくならざるを得なかった。 複数の拠点で同じレベルのコミュニケーションを担保することは難しかった。元々 1 つの拠点で開発が始まったために、我々の仕事の仕方はオンサイト・ファーストであった。メンバーはカジュアルに議論することが求められた。我々はチャットツールをヘビーに使っていたものの、込み入った議論になると直接話しかけた。これは全くもって問題ない。もしこれが一つのオフィスであるという前提があるのなら、むしろ推奨されるべきことである。しかしながら、新しいオフィスのメンバーに撮ってみると同じようなコミュニケーションをとることはできないので、このようなコミュニケーションのとり方は問題となりうる。もし片方のオフィスで議論が上がった場合、他方のオフィスのメンバーはその議論が発生したことにすら気づけないのだ。こうした状況は自然とオフィス間でギャップを生み出してしまう。 このギャップを埋めるため、頻繁なオンライン会議を設定した。しかし、このオンフライン会議でも依然ギャップが発生した。オンライン会議はそれぞれの拠点の会議室を予約して、ビデオで繋ぐ典型的なものだった。多くのケースでこれは機能した。しかし、あるちょっとした議論が沸き起こると、メンバーたちはそれぞれの拠点で隣通し話しかけるようになった。この議論はマイクには拾われなかった。こうした小さな議論は会議室間でギャップを生んだ。 定期的な出張を試みたりもした。新しいオフィスのメンバーが初期オフィスの方に来て (あるいは逆のケースで) 暫くの間、オンサイトで働くのだ。これは初期の関係値を作るに当たって役に立った。しかし、ギャップを埋めるには完璧ではなかった。

なぜリモート・ファーストが理想的なのか?

リモート・ファーストの仕事環境は特に複数の拠点をまたぐグローバルチームを作るには最高の機会だ。 リモート・ファーストの仕事環境に移行するとともに、上に挙げた問題はすべてなくなった。メンバーはチャットツールを使ってカジュアルな議論を始めることを、いわば強制される。これはどの拠点のメンバーに対しても平等である。コミュニケーションは誰に対しても見える。より集中して議論が必要な場合は、オンライン会議が始まる。会議室の予約は必要ない。ボタンをクリックしてミーティング URL を発行するだけだ!興味のあるメンバーは自由に参加できる。

もう一つの予期せぬ副作用は、英語が得意でないメンバーのコミュニケーション促進だ。我々のコミュニケーションの主たるチャンネルは対面の会話からチャットツールに移った。これは、英語が得でないメンバーの敷居を下げた。エンジニアの中には英語を読み書きするのは得意だが、議論するのは得意でないひとがいる。チャットツールはこうした人々に自分の意見を表明する手助けをしてくれる。

この機会を活用しよう

最近、同僚と現在の状況下で如何にグローバルチームを作っていくか議論する機会があった。彼は、チームの立ち上げに当たって出張し対面する機会がないから関係値を作るのが難しいと悲観がちであった。しかし自分は上に上げたとおり別の意見を出した。我々は物理的に合うことができないからこそ、複数拠点をつないだグローバルチームを作るには絶好の機会なのだと。現在進んでいるリモート・ファーストの仕事の仕方を最大限活用し、強いグローバルチームを作ろう。

原文:

yuichi-murata.medium.com

2021 年はアウトプットをする

f:id:yuichi1004:20210102095453j:plain

ちょうど一年ほど前から Medium にてブログポストを書き始めた。ちょうど以下の記事をポストしたのが昨年の 1 月 1 日だった。

yuichi-murata.medium.com

これは自分にとって初めての Medium での投稿であった (そして初めての英文ブログポストでもある) 。それと同時にこれは自分にとっての 2020 年の抱負であると同時に、自分のライフタイムゴールであるグローバルチームビルダーになることの宣言でもあった。グローバルチームのマネジメントについて学ぶために多くのトピックについて学んだ。100 冊近くの本や記事を読んだ。その結果として、エンジニアリングマネジメント、戦略、グローバルチームリーディングなどの知識についてはだいぶ詳しくなった。2020 年は自分にとってインプットの年であった。

2021 年はアウトプットにフォーカスする

2021 年はアウトプットにフォーカスしていきたい。目標は以下の通りだ。

  • 最高のグローバルチームを東京発で作る。異なる拠点で活動し、異なる言語で話すメンバーをまとめる。毎日密に連携し、同じゴールを達成する一つのチームを作る
  • 毎週自分の経験を基にグローバルチーム作りの知識を発信する。ブログポストを継続して書く。公のイベントでのトーク、本の執筆などの様々な新しいアウトプットの機会に挑戦する。

ちょうど一年前、現在のチームのマネージャーに着任した。現在のチームは素晴らしいアウトプットを出していると思う。だが、今よりずっと高いアウトプットが必要だと考えている。今のチームは半分グローバル化したチームだ。同じ部門の英語話者とコミュニケーションを取りながら仕事をしている。しかしながら、チーム内部のコミュニケーションは以前日本語が大前提となっていて、これがチームをスケールするための一つの制約になっていた。自分のゴールはこの文化を変え、異なる拠点ではたらき、日本語を話すことができない才能あるエンジニアと共により良いチームを作ることである。

最近ではブログ記事を書くことを楽しみにしている。これは今年も続けていきたい。加えて新しいアウトプットにチャレンジしたいと思う。

今年のデブサミにて以下の発表をする予定である。これは日本語話者に向けたイベントであるが、英語話者を対象としたイベントの登壇などもチャレンジしてみたい。

event.shoeisha.jp

そして、前々から本の出版に携わりたいと思っていた。今年はこれにもチャレンジしてみたい。現在ある本の翻訳関係のプロジェクトに携わっている。このプロジェクトに大きな貢献をしたいと考えている。そして、これが上手くいくようであれば自分の本の執筆にもチャレンジしてみたい。

グローバルチームをマネジメントする知識

今後も自分自身の経験を通じて、グローバルチームをマネジメントする知識を発信していこうと思う。興味をもっていただけた方はぜひブログを購読していただけると幸いである。 自分のアウトプットが少しでも皆様のマネジメントの役に立てれば嬉しい。

エンジニアリングマネージャーが知るべき 3 つの戦略

f:id:yuichi1004:20201227213229j:plain

戦略思考はエンジニアリング・マネージャーの本質的スキルの一つである。あなたはあなたのチームの将軍である。あなたのチームのアウトプットはあなた次第だ。あなたの戦略スキルによって、あなたのチームのスキルを倍にも半分にもなる。 自分は今年十数冊を超える戦略書を読み漁ってきた。この記事ではエンジニアリング・マネージャーとして最も重要と思われる戦略スキルを 3 つに絞って紹介したいと思う。

アジリティ

アジリティは古典的戦略概念の一つである。アジャイル、リーン、ブリッツ・スケーリングといった昨今流行りのコンセプトの形でその影響をみることができる。 アジリティは「いかに早く動きの方向を変えることができるか」である。どれだけ「速いか」という意味ではない。むしろ「速さ」とは逆の概念にすらなり得る。ロケットが宇宙に向かって進む様を想像してほしい。ロケットは地球の重力の影響に逆らえるほど速いが、その方向を変えるのは容易ではない。慣性を最大限活用して推進するからだ。このことはロケットは「速い」が「アジリティ」はないことがわかる。次に、サッカー選手 (またはバスケット選手でも構わない) が対戦相手を抜く様子を想像してほしい。選手はフェイクをかけ、素早く異なる方向に進み相手を抜き去る。これが「アジリティ」である。

アジリティの重要さは 1939 年の第二次大戦で認識されることになる。ドイツ軍は密林を密かに行軍し奇襲攻撃を仕掛けた。当時フランス軍は世界でもトップクラスの戦車部隊を持っていた。しかしながら、ドイツ軍は第一防衛ラインを突破するや否や、フランス軍を継続してたたみかけた。ドイツ軍はフランス軍が立て直す前に次々に行動を起こした。その結果、ドイツ軍は質でも量でも劣るフランス軍を圧倒したのである。これは「電撃戦」として知られる。

もう一つの重要な発見がジョン・ボイドと呼ばれる人物によってなされた。ジョン・ボイドはこの発見を OODA ループと名付けた。OODA ループは米海兵隊のドクトリンとして活用されている。彼は朝鮮戦争のさなか、アメリカ軍の F-86 戦闘機がソ連軍の MiG-15 に対し圧倒していることを発見した。当初それらの戦闘機の性能は殆ど同じであったにもかかわらずである。彼は、F-86 戦闘機はより広い範囲を見ることができるウインドシールドを持ち、強力な油圧制御システムをもっていたことにより「アジリティ」に優れていたためだと結論づけた。

アジャイルマニフェストにもアジリティの記述を見ることができる。アジャイルマニフェストの「計画に従うことよりも変化への対応を」はまさにアジリティの重要性を意味している。リーン開発手法は MVP (Minimum Viable Products) を作ることによって、より早く仮説を検証し、最小の労力で方向転換ができる方法について述べている。

アジリティを理解することはこれらの方法論の本質を理解する上で役に立つだろう。新しい概念や理論がアジリティの上に次々に登場している。アジリティを理解することであなたも新しい概念を発見することができるかもしれない。

摩擦

Vom Kriege または「戦争論」は戦略書の古典だ。クラウゼヴィッツは戦争の不確定要素を「摩擦」と定義している。

戦争においては 、一切事が至って単純である 、しかしこの最も単純なものが 、実は多くの困難を孕んでいるのである 。これらの困難が積み重なると摩擦が生じる 、そしてこの摩擦は 、戦争を親しく体験したことのない人には 、それがどのようなものであるかをとうてい思いみることができないのである 。(中略) 戦争においては 、机上の計画ではとうてい考えられないような無数の小さな事情のために 、一切が最初の目算を下り 、所定の目標のずっと手前までしか達しないのが通例である。 — 戦争論 上 (岩波文庫) by クラウゼヴィッツ, 篠田 英雄

ある車が等速直線運動をしているさまを想像してほしい。その動きを机上で計算するのは簡単だ。しかし、実際の動きは机上の通りにはならない。なぜならタイヤに、ギアに摩擦が生じ、空気抵抗が車両の動きを変えてしまうからである。クラウゼヴィッツはこれの「摩擦」の比喩を用いて戦争の不確定要素について述べているのである。

ソフトウェア開発でも同様の考え方が成り立つ。あなたは初期にプロジェクト計画を立てる。だが、それはほとんどのケースで計画通りにならない。仕様書の不整合を見つけたり、他のチームの予想外の遅延にブロックされたり、依存ライブラリの破壊的変更でビルドエラーを起こしたりして、プロジェクトは遅延していく。これはクラウゼビッツが述べている摩擦とそっくりである。

クラウゼビッツは摩擦への対処は「軍事的天才」にあると結論づけている。彼の説明に依ると、不確定要素にたいしてより上手く対処する軍事的天才こそ相手に勝つことができるのだという。摩擦の対処には確立された理論や科学はない。天才による技能のみが摩擦に上手く対処しうるということなのである。

今日では、プロジェクト管理のための仕組みをたくさん学ぶことができる。ガントチャートPERT 図などおなじみのものがあるだろう。しかしながら、未だに多くのプロジェクトが計画通りに進まず、しばしば致命的な形で失敗することを我々は知っている。これはプロジェクトの成功の鍵がこうした方法論にないことを暗示している。プロジェクト成功の鍵は、軍事的天才と同じように、プロジェクトの不確定要素に対して対応する個人の技能によるものなのである。

物語

物語は人類にとって最も強力な組織化のためのツールである。立派な大聖堂を想像してほしい。あるいは巨大なピラミットでも構わない。こうした偉大な建造物はどの様に作られるのだろうか。その答えは「物語」である。人々は神々や王の偉大さをストーリーを通じて信じるようになる。これらのストーリーは聖書や石版、モニュメントに刻まれる形で知ることになる。これらのストーリーこそが人々にその偉大さを知らしめ、偉大な建造物建築のための組織化を行うのである。 

物語は近代の政治にも見られる。大統領候補はスピーチを通じて人々を引きつける。独裁者はプロパガンダを通じて人々を管理しようとする。物語は良い方向にも悪い方向にも扱うことができる。そしてどちらに使うにせよ、その人々を動かす力は強大だ。

物語はソフトウェア産業でも用いられる。いちばん有名な物語は「情報は自由になりたがる」というものだ。このストーリーはフリーソフトウェアの文化を促した。この物語の力は、Linux OS や GNU コンパイラ、アパッチソフトウェアにたくさんの GPL/LGPL ライブラリと行った偉大な成果物を生み出している。ストーリーはコーポレート・ミッション・ステートメントにも用いられる。Google は「世界中の情報を整理する」という物語を通じて世界でトップクラスの才能をひきつけている。テスラは「持続可能なエネルギーに向けた世界の加速」という物語をもちいて同様のことを成し遂げようとしている。これらは「戦略的ナラティブ」として知られ、今日の組織に広く用いられている。

世界でも有名なリーダーたちは物語を語る能力を持ち世界を変えてきた。あなたは誰を思い浮かべるだろうか。マーティン・ルーサー・キング牧師だろうか。ウインストン・チャーチルだろうか。それとも IT 業界のレジェンド、スティーブ・ジョブズだろうか。エンジニアリング・マネージャーとしてあなたもチームを団結させるために物語を語る能力が必要だ。

チームの将軍になろう

エンジニアリング・マネージャーの重要な役割はチームをよりよい方向に導くことだ。あなたはチームが成功できるように、チームの「将軍」にならなければならない。この記事ではエンジニアリング・マネージャーが知るべき戦略的概念をいくつか紹介した。

この記事を通じてあなたが良き戦略的視点を手にし、能力ある「将軍」として振る舞えるようになれると嬉しい。

原文:

yuichi-murata.medium.com

戦闘指揮官に代わる障害対応の進め方

f:id:yuichi1004:20201219141603j:plain

本番障害はチームにとって最悪だ。突如としてあなたの携帯が鳴り出す。システムダッシュボードはレッドシグナルでいっぱいになる。ツイッターのタイムラインにはお客様の不満で溢れかえっている。事業責任者がチームの背後に陣取って、いまかいまかとレポートを要求してくる。あなたの幸せな金曜日はすでにむちゃくちゃにされてしまった。

注目!指揮官が陣頭指揮を取ります!

チームには問題を特定して行動するための効果的なアプローチが必要だ。戦闘指揮官は古典的だがとても有効な手段である。シニアエンジニアが障害対応を全体指揮する。これは有効な手段である。なぜなら本番障害は多くのケースで「直感」を必要とするからだ。あなたはきっとたくさんの混乱したレポートを受け取るだろう。「CPU が張り付いたままだ」「外部ネットワークから異常なアクセスがあるぞ」「ネットワークを使いすぎている。これが原因にちがいないぞ」あなたはこれらのレポートの中から、何が原因で、何が事象に過ぎないのかを見分けなければならない。こうした目利きは教科書からは学ぶことはできない。実践から学ぶしかないのだ。それ故に経験豊富な戦闘指揮官は本番障害に対して有効な手段たりえるのである。 戦闘指揮官はコミュニケーションの観点でも有効である。一つの統合されたレポートラインは障害対応を一貫性のあるものにする。レポートラインの集約も、マネジメントにとってありがたいものだ。エンジニアリングチームの中に混乱して見当違いのアクションを取る者もいなくなる。

協調障害対応

一方、もう一つの障害対応パラダイムとして、協調障害対応がある。一度本番障害が発生すると、第一報は Slack チャンネルに透過される。Slack チャンネルやオンライン会議室に次から次へとエンジニアが飛び込んで対応を始める。チームは何が起こっていて何が原因なのか議論を始める。それぞれ各自で自分の仮説を立て、指示を待つことなく分析をはじめる。事前にだれが指揮を取るなどという取り決めはない。人々は自然とそれぞれの領域でリーダーシップを発揮する。全ての対応が並行して進む中、レポートは一箇所に纏められる。今日の IT コラボレーションツールがあるからこそ機能する方法である。 協調障害対応は組織的にも、より「耐障害性」のあるアプローチである。単一障害点がないのだ。チームは戦闘指揮官が不在でも行動することができる。戦闘指揮官が一時的に現場から離れることも可能だ。来客があったり、採用面談などどうしても外せない用事があろうと問題ない。 協調障害対応は自然のリーダーシップを育む。全員が全体状況を観察し、アクションを決める。全員がそれぞれの仮説を立て、分析を独自に進める。ときに他の人の助けを借りたり、修正作業に巻き込んだりする。これはすべての人材に実際の障害を通じて実践的な経験を得る機会を与える。 協調障害対応は、不確定要素の多いデジタルワールドにおいて理想的な手段だ。コンピューターシステムは過去に比べてずっと巨大で複雑になった。これは、 Davit Epstein 博士の言う「意地悪な学習環境」にあたる。知識の幅こそが問題解決の鍵だ。協調障害対応はより多くの人間を分析に巻き込むことに寄って、より多くの視点をもたらす。ときにはビギナーズラックが決め手になることだってある。我々は多様な視点を活かして複雑な問題を解決するべきなのである。

協調障害対応を成し遂げるために必要なもの

協調障害対応をなしとげるためのいくつかの鍵をこちらで紹介しよう。

ライブドキュメント

ライブドキュメントは最も重要であるというのが自分の意見だ。協調型ドキュメンテーションツールの進化のおかげで、いまでは多人数で文章を書くのがずっと簡単になった。最近の製品では、リアルタイムに協調して文章を書くことすら可能なものも多い。これは複数人で並行して情報をまとめるのに最適だ。

f:id:yuichi1004:20201219141310p:plain
ライブドキュメントの例

ライブドキュメントは錯綜するレポートを理解するのに役立つ。5 つの議論が並行している状況を想像してみてほしい。あなたはそれらのどの議論も理解できないだろう。しかし、ライブドキュメントで情報が纏められていればそれも可能になる。あなたはそれぞれのトピックについて一つずつ意識を集中して順番に理解していける。現在進行している議論を遮って他の議論をする必要もない。

手順

作業手順を確立しておくことも協調作業をなすために重要だ。手順には以下のような事項が含まれる。

  • コミュニケーションチャネル
  • レポートフォーマット
  • 意思決定プロセス

コミュニケーションチャネルを障害発生前に決めておくことは大事だ。さもなくば、各々勝手にスレッドを立て始めることだろう。これは障害対応情報を散らばらせることになりかねない。複数の DM にそれぞれレポートをするなんて言うのは最悪だ。我々は複数の DM チャンネルを行ったり来たりしている暇などない。障害対応のために時間を使わなければならないのだ! ライブドキュメントのフォーマットを決めておくことも大事だ。フォーマットはライブドキュメントに分かりやすい構造を作り出す。 意思決定プロセスは、特段の断りなしに実行してよいアクションと、そうでないアクションを明確にする。分析はだれがどうやろうと自由である。しかしながら、本番システムの変更は注意深く決定されなければならない。場合によっては経験のあるエンジニアが決定を下すべきものもあるだろう。 場合によっては事業責任者の承認が必要となるようなものもある (サイトの一時完全停止など)。

コーディネーター

コーディネーターは協調障害対応を効率的に実施するための役割である。コーディネーターは指揮官ではない。コーディネーターは同僚が正しい手順に従うよう促す。コーディネータは、アクションアイテムを指示する代わりに、それぞれのアクションを誰が担当しているのかを明確にする。追加で必要なアクションがあれば、誰かにアクションを取ってもらうよう頼む。この方法によって、全員がそれぞれの領域でのリーダーシップを発揮することができ、かつ全体として一貫性の取れた行動を可能にする。 コーディネーターはライブドキュメントの「編集者」である。コーディネーターは全体のフォーマットを整え、不足する情報を書き足し、人々に足りない情報を文章化するよう促す。コーディネーターはすべての情報を文章に落とし込むようにするべきである。そうすることに寄って全員が全体状況を把握できるようにある。そして、障害対応が長引いた場合などに要員交代も可能になる。

みんなで協力して終わりにしよう

協調障害対応は不確定要素の多い今日の本番障害における効果的なアプローチだ。人々が同時にかつ一貫性のある方法で仕事を成し遂げることができる。協調障害対応は特定のシニアエンジニアへの依存を避け、全員に経験から障害対応の学びを得る機会をもたらすだろう。

原文:

yuichi-murata.medium.com

デスマーチを乗り越える――乱気流にも耐える翼を手にするには

デスマーチ

ソフトウェアプロジェクトは戦争に似ている。たくさんの不確実性を抱えている。たくさんの予算を必要とする。ソフトウェアプロジェクトにはチームメンバーという部隊を抱えて挑み、ステークホルダーという味方 (しばしば敵対関係になることもある) と共に立ち向かわなくてはならない。この複雑性が原因ですべてのプロジェクトは最初に計画したようには行かない。悲しいことに「デスマーチ」と呼ばれるような状況に陥ることすらある。

この記事では、どの様にデスマーチを乗り越え、さらにその経験をテコにして我々エンジニアのキャリアに活かすかについて話したい。

しなやかな翼

皆様が初めて飛行機に搭乗したときはどのような体験だっただろうか。自分は 12 歳のときに初めて飛行機に搭乗した。それはとても恐ろしい経験だった。自分は窓際の翼を見ることができるシートに座っていた。旅の途中、その翼がうねるように波打っているのを見ていてとても恐ろしくなった。強風が吹くたびに大きく揺れるのだ。これは科学をまともに知らない 12 歳の男の子には恐怖以外の何物でもなかった。今にもこの翼が2つに折れて、上空 10,000 メートルから放り出されるのではないかと心配したものだった。

f:id:yuichi1004:20201213174713j:plain
Photo by Arnold Antoo on Unsplash

高等専門学校に入学してから、自分は物質の剛性について学んだ。今では、翼が「揺れるから安全」なのだということがわかる。しなやかな物質はしなることによって、力を分散させ、その結果簡単には壊れないようになっている。

このアナロジーは心理学にも成り立つ。しなやかな考え方は人生の難しい局面を乗り切るにあたってとても良い資産になりうる。しなやかな考え方を持っていれば、難しいプロジェクト、デスマーチでさえも乗り切ることができる。自分は過去 2 年間、たくさんの心理学トピックに付いて学んだ結果以上の結論に至った。 しなやかな考え方を手に入れるためにはいくつかのアプローチがある。

成長マインドセット

Carl Dweck 博士は世の中には2つのマインドセットが存在することを発見した。硬直マインドセットと成長マインドセットだ。硬直マインドセットは、人々の能力は生まれつき定まっているもので抗うことができないというものだ。一方で成長マインドセットは、人の能力は自分の努力次第でどこまでも伸ばすことができるという考え方だ。 彼女の研究では、成長マインドセットを持つ子どもたちは喜んで難しいパズルにチャレンジした。彼らは難しいチャレンジに臆することはなかった。チャレンジこそ成長のための鍵だという認識を持っていた。一方で硬直マインドセットを持つ子どもたちは、難しいパズルへの挑戦を避けるような振る舞いを見せた。彼らにとって能力は生まれつきに依るもので、失敗をとても怖がっていた。なぜならば、そこで失敗すれば、それは人生を通して負け犬であることの証明になってしまうからだ。あなたの想像するとおり成長マインドセットを持つ人々のほうが、積極的に挑戦をし、失敗から学ぶため、成功する確率が高い。

成長マインドセットは単純に失敗に強いということではない。そうではなくて、彼らは失敗を簡単に受け入れることができるのだ。その結果、より多くのチャレンジを行い、たくさんの失敗をして、そこからたくさんを学ぶ。

Carl Dweck 博士の本から詳細を学ぶことができる。この本から、成長マインドセットの良い側面と、人間の能力が生まれつきによらないことを学ぶことができる。

www.amazon.co.jp

マインドフルネス

マインドフルネスはしなやかな翼を手にするもう一つの方法だ。マインドフルネスは、あなたの置かれた状況を客観的に観察できる、あなたのこころの状態を指している。大きな失敗をしたときに、週末に Netflix のドラマでも見ているかのような気持ちで、客観的に自分自身を見ることができるのだ。これは状況をパニックに陥らず分析するのに役立つ。失敗を物ともせず、落ち着いて失敗から学ぶことができる。

マインドフルになるための簡単なトレーニングが「瞑想」だ。自分は一日 20 分の瞑想習慣を過去 1 年ほど続けてきた。以前に比べると、恐怖や怒り、心配といったネガティブな感情を処理するのがだいぶ楽になったように感じている。マインドフルネスや瞑想が心理的疾患や、脳の灰白質濃度を増加させると言った科学的根拠も見つかっている。こうした科学的根拠もあることから、自分はよく人に瞑想習慣をつけることをおすすめしている。

マインドフルネスに関する書籍や記事はたくさんある。以下の本は特に Engineer や Engineering 組織を改善する観点から役に立つのではないかと思う。

www.amazon.co.jp

セルフコンパッション

セルフコンパッションは Kristin Neff 博士によってもたらされた心理学上の概念である。他の人に対する共感と同じ様に、セルフコンパッションは自分自身に対する思いやりを発揮するという考え方である。

我々人間は失敗を犯したときに、自分を自己評価したり否定的になりがちである。セルフコンパッションはそうする代わりに、自分の悪い部分もひっくるめて受け入れるという考え方である。セルフコンパッションはマインドフルネスととても近い関係にある。両者は現実をそのまま評価することなく受け入れる考え方である。セルフコンパッションは、これに加えて自分自身に対する思いやりをもつ考え方である。

セルフコンパッションは大きな挑戦をするときには特に重要である。大きな挑戦をするとき、あなたはいくらか失敗しなければならない。もし失敗をしていないのなら、それは何も挑戦をしていないということであある。セルフコンパッションは失敗を受け入れ、そこから最高の学びを得ることを可能にする。

自分は多くのミスをおかす類の人間である。自分は自分の失敗に対してとても反応的な人間であった。最近は間違いを犯したときには、セルフコンパッションの概念をとにかく思い返すようにしている。この考え方は自分を落ち着かせて、失敗から効果的に復帰することを可能にしてくれる。

Kristin Neff 博士の書籍については以下をご覧いただきたい。

www.amazon.co.jp

しなやかな翼で高く飛び立つ

この記事では厳しい状況を生き延びるための心理学的なコンセプトをいくつか紹介させていただいた。自分はここ数年で何度か厳しい状況(ときにデスマーチのようなもの含めて) に遭遇したことがある。しかしながら、こうした概念を学んでいたおかげでより効果的に状況に取り組めたと思っている。

これらのコンセプトは人々が柔軟で失敗をものともしない、しなやかな飛行機の翼の様になることを可能にするものだ。もしあなたがダイアモンドでできた硬質な翼を持っていたとしよう。それはとても頑丈に見えるかもしれないが、乱気流を乗り切ることはできないだろう。ちょっとした衝撃であれば大丈夫かもしれないが、つよい衝撃が走れば真っ二つに折れてしまうだろう。

しなやかな翼はあなたをデスマーチのような厳しいプロジェクトにおいても立ち向かう力を与えてくれるだろう。そして、あなたはその経験をテコにししてより高く羽ばたくことができるだろう。

原文:

yuichi-murata.medium.com