見出し画像

「泥」の許容について

システム開発における「泥」というメタファーについてです。

「現実は泥臭い」と許容すると「泥臭いシステム」ができてしまいます。やがて「巨大な泥団子」になります。「泥臭さ」を取り去らずに分割られて「複数の泥団子」ができます。「分割された泥団子」は分割されたチームで運用されます。文字通り「泥を被る」ことになってしまいます。

なので「泥臭くやりたいなら勝手にやってくれ」と言う訳にはいかないのです。泥臭さを排除するのがエンジニアのマインドセットです。直ぐに排除できなくても影響範囲を狭めたり隠蔽したり、回避策を検討します。「そこまで想像してなかった」なら純粋に能力不足です。「それでも仕方ない」と思うならエンジニアに向いていないと言わざるをえません。マインドセットの変更が必要です。

「能力不足」は悪いことではなく、受け入れて成長しないといけません。私も含めて人間はみんな無能です。「ハンロンの剃刀」で言われる通り、無能に対しては悪意を見出さず、向き合うことが大切です。

モジュール化や、(もう少し大きいスコープなら)マイクロサービス化などで責務を分離して、泥が漏れないようにしないといけません。割れ窓理論とも言いますが、「これくらいならいいか」と気にしないでいると、あっという間に泥だらけの世界が広がってしまいます。

「現実は泥臭い」というのは事実ですが、許容する泥臭さは「人間関係」で、システム的な泥臭さは対応していくマインドセットが必要になると思います。

人間関係の泥臭さに対しては、Team Geekで言われている「HRT(謙遜・尊敬・信頼)」などで向き合うのが良いでしょう。

ゆるふわアジャイラーです。