My Favorite Life

Go there and write simply with golang. Such a person I want to be.

【本メモ】『エンジニアリング組織論への招待 〜不確実性に向き合う思考と組織のリファクタリング〜』

去年話題となっており、 「ITエンジニアに読んでほしい!技術書部門ベスト10」にも選ばれた 『エンジニアリング組織論への招待〜不確実性に向き合う思考と組織のリファクタリング〜』についての、本メモと考察。

エンジニアリング組織論への招待〜不確実性に向き合う思考と組織のリファクタリング〜
エンジニアリング組織論への招待〜不確実性に向き合う思考と組織のリファクタリング

Chapter1 思考のリファクタリング

エンジニアリングとは「曖昧さ」を減らし「具体性・明確さ」を増やす行為
どうしたら効率よく不確実性を減らしていけるのか

未来に何が選ばれるか、乱雑で判断基準のない状態から、
選択肢が絞り込み、何をどのように実現していけばよいのか決めるのが「情報」

不確実なものに向き合うのは「不安」
わからないことは、自分自身を脅かす可能性を考えてしまい、
人は本能的に「攻撃」か「逃避」を選択する。
よって、安心だと「わかっている」物事を優先して実行してしまう。
不安を減らすには、不確実性に向き合う必要がある。

難しい問題は、「何がわかればわかるのか」という次の一手を考え、
それを「確かめる」ことに変換する。

プロジェクトマネジメントでも、不確実性の高いタスクに優先的に取り組めば、時間の読みは正確になる。
不確実なものに直面することは、とても「不安」。
初期に不確実なものを確実に仕上げると、全体像が早い段階で見えてくる。

コミュニケーションの不確実性
・他者理解の不確実性:人は他人や事象を完全には理解できない
・伝達の不確実性:コミュニケーションが到達するとは限らない
・成果の不確実性:仮に理解されたとしても予想されたように行動するとは限らない

コミュニケーションの不確実性は、情報の偏りを生み出す。
経済学においては「情報の非対称性」という。
また、自分と他人の利害が異なる場合に、それぞれが合理的な行動をとったとしても、
全体としては不合理な行動になることを「限定合理性」という。

お互いの情報伝達が不完全で、それゆえに引き起こされた問題でも、
何か害意や悪意をその中に見出してしまいがちなのが人間の性。

「情報の透明性」とは、意思決定と意思決定に関わる情報が、組織内に正しく伝達されるように継続して努力し、
何かわからない決定があったとしても、直接聞いてみようという関係性をつくることです。

わからないものがあったときに、人は「回避」か「攻撃」する機能が本能的に埋め込まれている。

「エンジニアリング」は、不確実性を下げ、情報を生み出す過程。

Chapter2 メンタリングの技術

元々、人の心理などにはとても興味があるため、大変面白く読めた章であった。
これから下の世代も増えてくるのが、意識して取り入れていきたい。

逼迫した問題を抱えた当人は、冷静でいることが難しくなって、
感情的になったり、事実に基づかない思考をしてしまったり、大きな不安でつぶされてしまったりと、
普段の思考力を発揮することが難しくなってしまう。

必要に応じて直接口頭で会話するいう解決策も、少ない時間でレビューを効率的に行う方法の1つ。

自立型人材は、物事の原因を自分に求める。
今より良い状態にするために自分がどうしたらよいか?という問いを常に抱えていて、
課題に対して正面から向き合うことができ、
人間関係のリスクを恐れずに勇気を出して、解決のための行動をとることができます。

メンタリングは、自立型人材を作るため、信頼関係の上に期待値を調整して、
適切に自己効力感をもてるようなフィードバックループを作り出す。

メンターは「何か課題を指摘する」ための存在ではなく、
課題に一緒に向き合い成長を支援するというコミットが求められる。

・他者説得:このように人から与えられた説得による知識
・自己説得:自分自身で気がついたこと
メンタリングでは、他者説得よりも自己説得を重視し、その獲得を促す。

他者説得の特徴
・他人が答えを伝える
・体感を伴わない
・理解を確認できない

目的はあくまでメンティの行動を変容させ、次のステップに移行させていくこと。

自己説得の特徴
・他人が質問で促す
・体感を伴う
・行動の変化が発生しやすい

自己説得を生み出すには、答えを言うのではなく、
「事実確認」と「情報の非対称性の解消」に気がつくような適切な質問の積み重ねが重要。

傾聴
・「相手の」感情への共感を言動で表す
・「相手の」話の内容を「可視化」をする
・「相手の」思考の「盲点」を探索しながら質問をする

私たちは物事を「認知する枠組み」をもっていて、その枠組みの中でしか情報を処理することができない。
このような認知の枠組みのことを「認知フレーム」という。
対話によって、認知フレームを変えることを「リフレーミング」。

情報の非対称性
・自分は「わかっている」けど、相手はわかっていない
・相手は「わかっている」かもしれないけれど、自分はわかっていない

「情報の非対称性」を解消するには、
・自分の情報を相手に伝える
・相手の情報を自分が聞く

心理的安全性
「問題点の指摘」「自分の弱みの開示」「失敗の報告」といった行為には、「対人リスク」が伴う。
「心理的安全性」が高い状態とは、このような「対人リスク」を伴う行動が増えている状態のこと。

メンターはメンティに対して「存在を認めている」というメッセージを発し続ける必要がある。
このようなテクニックを「アクノレッジメント(承認)」という。
相手に対して、興味関心をもち、変化にいち早く気がつき、時間を費やして、言葉や行動を通して伝えることがアクノレッジメントの基本。

メンタリングの最終工程は「これからどうするか」を話し合い、合意し、次回に振り返ることを約束すること。
心理的安全性のある関係性の土台を作り、傾聴と可視化、リフレーミングを通じて問題の変換を行った後に、
メンティとメンターは「次の行動」を決めていく。

Chapter 3 アジャイルなチームの原理

この章は「不確実性」との関連について説明している所は面白く読めたが、
以下3つの書籍を熟読しているので、基本的には目新しく感じる部分が少なかった。



Chapter 4 学習するチームと不確実性マネジメント

これまで大小さまざまなプロジェクトの開発マネージャーをしてきているので、
この章についても、感覚的に既に身についてる内容が多かった。

基本的なポイントをおさえておくのは大切だが、
プロジェクトは、構成メンバーの技量と理解度・要件と納期の難易度など、
色々な要因に左右される事が大きいので、あまり教科書的に対応していかない方が良いように感じている。
属人化した作業や作業間の依存関係によって生まれる制約も、プロジェクトを進めていくと肌で感じる部分である。

「エージェンシースラック」
依頼者からみて、代理人に「嘘をついたほうがトクになる」と思わせ、通常よりも高い費用が必要になる事。
「コントロールコスト」
「依頼者の利益」が「代理人の利益」になるように監視やインセンティブの形で支払う必要があるコスト。
「シグナリングコスト」
代理人である「情報をもつ側」が情報を開示し、非対称性を解消するために支払うコスト。

Chapter 5 技術組織の力学とアーキテクチャ

不確実性から生まれる「情報の非対称性」と「限定合理性」が組織において、
どう悪影響を及ぼすかが書かれている。
最後にアーキテクチャについても少し書かれていたが、マイクロサービスは以下の書籍に詳しい。


組織の中で「情報の非対称性」が加速すると、
いわゆるセクショナリズムと呼ばれるような、組織の一部では合理的であるが、全体的には合理的ではないといった論理が幅を利かせるようになる。

ソフトウェア開発において、多かれ少なかれ、次第に初期設計からの逸脱を要求されるようになる。
このような状態への追加開発は、
ソフトウェアの中身を知らない人々の感覚と、実際にソフトウェアを書いている人々にとって、
必要な作業との時間感覚の差が発生する。
その認識の差は邪推を生み出し(エンジニアの能力的な問題ではないか/努力不足ではないか)、
多くのハレーションが現場レベルで引き起こされる。

綺麗でシンプルなコードは、のちのち「技術的負債になりにくい」という性質をもっていることが多く、
汚いコードは、複雑であるがゆえに、全体を読み解くことが難しくなってしまい「技術的負債になりやすい」という性質をもっている。
「今必要な機能をシンプルに作る」

非機能要件の可視化
経営者や事業責任者にとっては、売上確保が最優先で、そのために保守性への時間を割くことの合理性があるように思えない場合がある。
このとき、コミュニケーション上のミスがあった場合(頭ごなしの否定/中間マネジメントが結論として、やらないという結果だけを伝える)、
エンジニアは「保守性への要件」提案は無駄なのかと考えるようになる。

最後に

不確実性が「情報の非対称性」と「限定合理性」を生み出し、
個人・メンター/メンティ・組織にどういった影響を及ぼすか、
またそれにどう対処するか言語化されていて、とても興味深かった。
システムの本というより、コミュニケーションや組織論の話でしたが、
一読の価値はあるなと思いました。