Life is Really Short, Have Your Life!!

ござ先輩の主に技術的なメモ

エンジニアは料理人によく似てるよなぁと思った話

元クロノスの山本さんと飲んでて、あーそうだな〜と思った話。忘れない内に書いておかないと。

エンジニアは料理人にすごく似てるということ。

料理をつくるのにはオーダーメイドで受けることもあればコース料理を用意することもある。前菜、メイン、お酒、デザートなどなど、組み立てを考えて全体図を描く必要があるのもよく似ている。素材にもある程度理解がなければならない。全ては素材から始まるのは、エンジニアで言えば全てはコードから始まるということに近しいだろう。

料理を作るにはレシピという設計図が要る。でも、その設計図の良し悪しは、その道に通じている人でないと理解できないからわからない。また、同じ醤油ラーメンでも、イケてる料理人と素人同然の料理人では出来上がってくるラーメンが全然違ってくる。レシピの意味がわかり、更にその先の工夫を凝らす能力の有無がそこに現れる。おお、まさしくエンジニア的だ。

料理の世界には、レシピの組み合わせや調理方法の発達などで無限の組み合わせがあり、それもまるでコードひとつでいろんな事が出来るソフトウエアの世界によく似ている。組み合わせて出来るオリジナリティは自分の頭のなかにしかないわけで、それを売りにできる辺りも似ている。

キャリアパスで言えば、典型例がその料理店の料理長となり組織的な試みでその店の料理の味を守っていく。料理長が自分で出来ても意味が無いからね。マネジメントに回るわけだ。もしくは別の味を求めて、別の料理店へ転職をする。生き方も特性も含めて、とても良く似ているね。

圧倒的に違うのは、料理は食べたら終わりで消費するものだが、ソフトウエアには消費がない。使い続けてもらわないといけない。ソフトウエアで食っていくには、買い切りだろうがサブスクリプションだろうがフリーミアムだろうが広告収入だろうが、「使い続ける」ことが絶対条件になる。でも、特にWebサービスの世界においては同じようなサービスは5個もあればお腹いっぱいで、その5つの椅子に座れなければポイー。Winner Takes Allってやつかしらね...ソフトウエアを売って食っていくのは、受託よりずっと難しいと言われる所以のひとつだと思ってる。

受託も受託で定期的にリソースをキープするのが難しい。受託はその時で最適解が異なるから、映画撮影のようにその都度適切なプロジェクトチームを作るのが運営上ベストなんだけど、とても都合の良いやり方になってしまう。それに合わせられる人もそう多くはない。定期的な収入があるモデルならいいんだけど、無いならクラウドソーシングサービス等を活用せざるを得なくなってしまう。あれだけで飯を食っていくのは、素人が価格のダンピングを起こす力学があるゆえに、厳しいと思う。

で、僕がずっと業務システムに携わっている理由につながるんだけど、ありふれたソフトウエアやシステムでも使い続けてもらう価値があるもの・・・それが業務システム。ありふれたものでいいけど、独自性・拡張性が求められる所が業務システムの面白いところ。画一的な経営手法なんて無いんだから。個人事業やコンサルのような士ビジネスは似通ってしまうけど、それ以外の法人でビジネスモデルもビジネスプロセスも全く同じ会社って知らない。バックオフィスと売上の間を埋める手法は、会社の創意工夫が詰まっている場所なんだよね。属人性が非常に高いから脆くなるけど。

その場所に息吹を与えるには、ありふれたIT技術でいい。でも、ありふれたソフトウエアでは拡張性がないからダメ。WordPress並の拡張性とノンプログラミング力があるツールさえあれば、中小企業が長く使ってくれる業務システムが速く安く作れるようになる。スピードはすべてを変えてくれる。スピードを手に入れた運転手は、もうそれより遅い車には乗らない。顧問となるエンジニアとWordPress的な業務システム開発ツールがあれば、誰もがメリットが有る状態を作ることが出来る。

・・・結局こーゆー結論に至ったわけだが、挑戦する価値はすごくあるなぁと改めて思ったのであります。