2025-07-12

ちょっと頭の中が整理されたので書く

前提

https://x.com/igz0/status/1943470652868157839

俺の知る限り最強の働かないおっさんは 社内外から最強の人材を集めてアベンシャーズみたいなチームを組成して「おっしゃ!! お前らにこの重要プロジェクト任せたわ!!!😊」って言ったあとに 会食とかゴルフ行きまくって その後、なんも仕事しないまま傾いた会社を建て直して、違う会社行った人。

https://x.com/EzoeRyou/status/1943544943953481848

手を動かすのが早いだけのやつを集めて保守不可能、運用困難なシステムが出来上がることが多い。

https://x.com/lakefieldsounds/status/1943610424873652459

ベンチャーはほぼこれ。 ビズ優先なので黄金のクソコードでも作った人は偉いって持て囃されるしな。

https://x.com/mizchi/status/1943634206133039353

黄金のクソコードを作った人が出世して手を動かさなくなり負債を返せる人がいなくなって数年経ち、忘れた頃に何も知らない若手にやらせて本人の能力と無関係なところで歯が立たずメンタル病んでいくのをみて最近の若者は使えないとマウントとるところまでセット!!!!

考えたこと

正直だいぶ心当たりのある流れなんだけど、とはいえ「ビズ優先」はビジネスなんだから当然。エンジニア的美意識から言うと反吐が出るけど、いくら投資できるのかって話になっちゃうと最初から完璧なんか目指せないことも多い。

だからまず「手を動かすのが早いだけのやつ(今だとAI)」を集めて運用まで乗せちゃうのはそう間違いでもない気がする。一旦運用に乗せて、ユーザー集めて、リファクタリングできるだけの金を確保する。
あとリファクタリングは「数年経ってからまとめて」ではなく「ずっと、継続的に、少しずつ」やる。じゃないとアベンジャーズの脳内にしかない前提が消えて触れなくなる。

途中に入ってる「保守不可能運用困難」は黄金のクソコードにすらなっていない気がするけど。運用できないのはただのゴミじゃない?

で、じゃあ何を先にやるかっていうと

  • とにもかくにもデータ保護。少々のバグは放置してもユーザー情報のおもらしはやらない
  • ドメイン定義。ここが固まっていれば多少雑に作っても後から大変なこと(DBスキーマの大幅な修正とか)にはなりづらい 気がする
  • UI/UX定義
    • 「何をするシステムなのか」がユーザーに伝わらないことには金を生むシステムにはならない

という印象。
最近はDeNAさんとかが「まずAIで作ったプロト持ってこい」みたいなことになってるらしいけど(出典)ここでがっちりドメインというか要件というかコア機能というかそのあたりを固めないといけないんだろう。

まあLAMP時代画面に思いっきりエラーが表示されている(ユーザーが見る画面にそのままPHPのエラーが出力されている)状態のものを売ると言われて反吐が出たことはあるんだけど、最近は「とにかくユーザーに届けないことには意味がない」の気持ちが強くなってきた。
たぶんこの辺りの話って「エンジニアも経営感覚を持て」みたいな話の中身に近いんだと思うんだけど、やっとちょっと腑に落ちたかな。まず稼ぎ始めなくては続かないという

Left-click: follow link, Right-click: select node, Scroll: zoom
x