Skip to content

필사 모드: 成功した会社はどのように視力を失うか — エンジニアリング組織の能力の失明

日本語
0%
정확도 0%
💡 왼쪽 원문을 읽으면서 오른쪽에 따라 써보세요. Tab 키로 힌트를 받을 수 있습니다.

はじめに — 洞窟魚と能力の失明

最近 Hacker News で話題になった Ian Reppel のエッセイ「How Successful Companies Go Blind(成功した会社はどのように視力を失うか)」は、メキシコの洞窟魚(Astyanax mexicanus)から始まります。同じ種が、わずか数キロメートルしか離れていない場所で二つの形態で存在します。シエラ・デル・アブラの川にすむ個体は目を持ち、普通の魚のようにふるまいますが、同じ山脈の下の石灰岩の洞窟にすむ個体は、目が見えず、色素がなく、半透明です。

重要なのは、目をどのように失うかです。それは使わずに退化したのではありません。洞窟の条件で受精してから数時間のうちに、水晶体を作るプログラムが早期のアポトーシス(apoptosis)、すなわちプログラムされた細胞死を引き起こし、視覚組織に使われるはずだったエネルギーは、洞窟が実際に報いる形質へと再配分されます。より優れた嗅覚、より深い場所での摂食、次の凶作に備えた脂肪の蓄えです。目は放置されたのではなく、環境がその目に費やしたエネルギーを返さないために、能動的に切られたのです。

Reppel はこの会社版の現象を 能力の失明(competence blindness) と呼び、おなじみの物語と注意深く区別します。これは、昨日の市場が与えた顧客とマージンにしがみついて崩れる古典的な破壊的イノベーションではありません。能力の失明に陥った会社は消えません。強いブランド、まずまずのマージン、増える人員を何年も保ち続ける一方で、その下の基礎的なエンジニアリングだけが静かに萎縮します。能力はいまも遺伝子の中にあります。ただ発現が抑制されただけです。

原因は放置ではなく抑制

Reppel が描くメカニズムは、正確に述べる価値があります。よくある「怠けた」という話ではないからです。損害の大半は成長が生みます。会社が急速に大きくなるとき、「人員目標が基準をたわませ、ついには基準そのものが消えます」。内部の慣行だけで採用され訓練されたエンジニアが、やがて採用面接官になり、彼らは一度も見たことのない能力の代わりに、いまある混乱への居心地のよさを基準に人を選びます。

そのあと抑制が始まります。滞った保守を提案するエンジニアは抵抗にぶつかり、「最初の提案が却下されると、アポトーシスが始まり」ます。Reppel の最も鋭い観察は、技術的な提案がもはや提案として読まれない、ということです。それは、そのシステムを作り保守してきた人々の「アイデンティティへの攻撃」として読まれます。まだ問題を見ることのできるエンジニア、外の経験を持つ人々は素早く去ります。残る人々は、たいてい自分でも気づかないまま洞窟に適応し、「その適応はついに忠誠と見分けがつかなくなる」のです。

ここに悪い人も、悪い市場も必要ありません。安定して競争の少ない環境があれば十分です。参入障壁が極めて高ければ、既存企業は何の反発もなく官僚制と無駄を蓄積できます。居心地の悪い点はここです。この失明は、もはや視力に報いなくなった環境への合理的な適応だ、ということです。

私はこの「生物学を論証として使う」やり方はかなり有用だと思います。ただし一つ留保を付けます。たとえは証明するより説得します。洞窟魚は実在する印象的なメカニズムですが、会社はゲノムではありません。ですから能力の失明は法則ではなく、鋭いレンズとして扱うべきです。それでもこのレンズが価値を持つのは、具体的で確認可能な症状を予測するからです。その症状がエンジニアリング組織で実際にどこにすむのかを見ていきます。

誰も問うことを許されないレガシー

大きなエンジニアリング組織には、誰もが迂回するのに誰も触れないシステムが少なくとも一つはあります。遅く、ドキュメントがなく、テストは形だけで、デプロイにはいまも特定のシニアエンジニア一人が午前2時に起きている必要があります。なぜそう動くのかと問えば、理由ではなく歴史が返ってきます。

Reppel のアイデンティティのメカニズムは、この状況がなぜそれほど強固なのかを説明します。そのシステムを作った人はいまやシニアで、多くの場合影響力を持ちます。システムを問うことは、その人を問うこととして聞こえます。だから「これは書き直すべきだ」と言う新人は、その主張の妥当性で評価されず、静かに世間知らず、あるいは組織に合わない人として分類されます。提案が数回却下されると、彼は提案をやめます。そのシステムは良いから守られるのではなく、誰かのアイデンティティと融合したから守られるのです。これが一つのコンポーネントの水準で起きる能力の失明です。組織はそのシステムをもはやシステムとして見ることができず、ただ人としてだけ見ます。

手がかりは感情の温度です。あるコンポーネントについての落ち着いた技術的な質問が、繰り返し防御的な反応を生むなら、組織がすでに切ってしまった目を一つ見つけたということです。

現実が腐る間もダッシュボードは緑のまま

失明が隠れる二つ目の場所は指標です。圧力を受けた組織は、たいてい数字を偽りません。もっと微妙で、もっとたちの悪いことをします。緑のまま残るものは測り続け、痛むものは静かに測らなくなるのです。可用性は99.95%、スプリントのバーンダウンはきれいで、ダッシュボードは一面の緑です。けれども実際にリリースする人は誰でも、システムが脆いことを知っています。肝心の現実が、そもそもダッシュボードに載ったことがないからです。

これは洞窟魚の衣をまとったグッドハートの法則(Goodhart’s law)です。ある指標が組織の報われる目標になった瞬間、それは他の何かを測る良い尺度であることをやめます。その指標は良くなった嗅覚であり、測られない現実は切られた目です。危険な変更はまれで恐ろしいリリースへとまとめられ、チャートがなめらかに覆い隠すので、デプロイ頻度は健全に見えます。「障害」の定義が静かに狭められたので、障害の件数は減ります。これらの数字は不正ではありません。まさにこの洞窟が報いる形質なのです。

私が信頼する点検は、ギャップテストです。指標が言うことと、最も経験豊富なエンジニアに非公式に尋ねたときに返ってくる答えを、並べてみるのです。健全な組織はそのギャップが小さい。失明した組織はギャップが大きく、そのギャップともはや争わないダッシュボードを持っています。

プロセスが瘢痕組織になるとき

三つ目の症状はプロセスです。Reppel は「センター・オブ・エクセレンス(centre of excellence)」の逆説を指摘します。かつて至るところに分散していた卓越性が、一つの「プロセスショップへと抽出」され、それを守ろうとした統制が、かえって内発的動機の萎縮を生む、というものです。エンジニアリング組織については、私はもっと率直に言います。重いプロセスの大半は瘢痕組織です。レビューボード、必須の承認、RFC テンプレートは、それぞれ特定の古い傷への反応として育ち、傷が癒えたあとに取り除かれることはほとんどありません。

その結果は、もはやうまく作れなくなったシステムについて、非の打ちどころのない設計文書を生み出す組織です。プロセスの硬直は厳密さと取り違えられやすく、まさにそれゆえに生き延びます。それが置き換えてしまった丁寧なエンジニアリングのように見えるからです。しかし本当の能力とは分散した判断です。ゲートなしでも良い判断を下すと信じられるエンジニアたちのことです。判断を信じられないとき、私たちはゲートを足し、足すゲートのすべてが、最良の人々に彼らの判断は要らないと告げます。すると目の利く人々が去り、輪が閉じます。

簡単な診断があります。プロセスの各必須ステップについて、それが防ぐ失敗が何であり、そのステップが最後に何かを捕まえたのはいつか、誰かが言えますか。答えのないステップは瘢痕組織であり、瘢痕組織は見えません。

おわりに — 視力を取り戻すには

エッセイは心から希望的な調子で終わり、私はそれにふさわしいと思います。遺伝子はまだそこにあります。失明は抑制された発現であって、削除ではありません。Reppel はこう書きます。「別の場所へ泳げ、そうすればあなたの視力は戻るかもしれない」。個人のエンジニアにとって、これは具体的で、しばしば正しいのです。環境を変えれば、洞窟で過ごした10年が切ってしまった判断力が、数か月で戻ることがあります。

組織にとってはもっと難しい。そして私は、このエッセイの最も冷静な含意が、脱出は組織より個人にとって容易だ、ということである点を正直に言いたいのです。それでもメカニズムは、それ自身の対策を示唆します。システムを作った人とシステムを切り離し、レガシーを問えるようにしてください。人ではなくコンポーネントをレビューするのです。緑のまま残るものではなく痛むものを測り、ダッシュボードとエンジニアの非公式な見方の間のギャップを、本当の信号として扱ってください。コードを廃止するようにプロセスを廃止し、いまも防ぐ失敗を挙げられないゲートは消してください。そして外から目の利くエンジニアを採用したなら、初期の「これは壊れている」という言葉を、彼らが与えうる最も価値があり最も傷みやすいものとして扱ってください。洞窟はすでに静かに、その言葉をやめるよう彼らに教えているからです。

組織を率いる立場で短い要約が欲しいなら、健全な組織と失明した組織を分ける四つの問いがあります。

  • 最も古いシステムについての落ち着いた技術的な質問は、好奇心を生みますか、それとも防御的な反応を生みますか。
  • 緑のダッシュボードと、シニアエンジニアが非公式に語ることとの間のギャップは、どれほど広いですか。
  • 各必須プロセスステップについて、それが防ぐ失敗と、最後に何かを捕まえた時点を誰かが挙げられますか。
  • 新人が「これは壊れている」と言うとき、組織は興味を持ちますか、それとも彼がなぜ間違っているかを説明しますか。

エッセイが残す最も難しい問いは、個人的なものです。適応がついに忠誠と見分けがつかなくなるなら、いま大丈夫だというあなた自身の感覚さえ、完全には信じられません。正直なやり方は、まだ目を持つ人々と照らし合わせることです。最近の入社者、去った人、他社のエンジニアです。彼らに明らかなことがあなたに見えないなら、それは意見の相違ではありません。あなたは洞窟を見ているのです。

参考資料

현재 단락 (1/27)

最近 Hacker News で話題になった Ian Reppel のエッセイ「How Successful Companies Go Blind(成功した会社はどのように視力を失うか)」は、メキシコ...

작성 글자: 0원문 글자: 4,616작성 단락: 0/27