以前会社のブログで、「壁打ち」に関する記事を書きました。法人サイト更新してなくて恥ずかしいのですが。
ひさしぶりに思い出す機会があり、壁打ちをもっと職種として体系的に扱えないのかと考えたところ、システムに限ればソリューションアーキテクトが近いのかなと思いました。
AWSが考え出した概念なんですかね。
https://zine.qiita.com/job-offer/aws-solutions-architect/
この記事ではいくつかに分類されているようですが、ようは顧客のビジネスをヒアリングし、その解決策(ソリューション)のアーキテクチャを作ってくれる人(設計者)とここでは扱います。(より込み入った技術アドバイスは除くものとします)
メルカリみたいなの作りたいんだけど
○○みたいなの作りたい!というのはいろんな現場で起こることです。しかし適切な壁打ちができなければいろんな意味で犠牲者がたくさん出てしまいます。ここはちゃんとした設計をしなければなりません。まずは予算を聞いてみましょう。
うーん 20万円くらいかなぁ。
つぎに相手を張り倒しましょう。ではなく、20万円の原資でどのくらいのビジネスを考えているのか聞いてみたり、本当にやりたいことは何なのか聞いてみたり、メルカリと同じものを作ろうとしたら小規模でもこの高騰した東京のエンジニア相場だったら数千万はかかりますよと優しくお伝えしましょう。
などと脳内シミュレーションで考えていたら、やはりこのような知識は形式知になっておらず、よくないなと感じました。
例えばおなじファイル共有システムを作るのでも、
だと値段が4,5桁変わってくる可能性があるわけです。このように「言外にありそうな要件を過去のパターンマッチから補完する」「顧客が本当に欲しかった程度のものを過不足なく提案する」「運用のことまで考えられている」「そもそも作る必要あります?」「無理なものは無理という」みたいな知識は、なかなか教えることが難しいなと感じています。ビジネススクールのケーススタディにも近い感じがしますね。
もし良い書籍があればおしえてください。
どう書く?orgの設計版みたいなやつをやってみたい
ここからはめちゃくちゃ思いつきなんですが、特定の界隈で一世を風靡した「どう書く?org」というコードゴルフのサイトがあったのですが(今調べたら別の方がリニューアルしてた)それの設計版ができないかなと思ってます。
たとえば「メモアプリが作りたい」というふわっとしたお題があった時に、シチュエーションを考えながらいろんなバリエーションをみんなで書くわけです。
サーバは共用?クラウドコンテナ?サーバレス?アプリはWebのみ?フルネイティブ?Expoみたいなプラットフォーム?もしかするとエンプラ要件ならSalesForceで作るべき?とかとか・・
自分が得意な領域が出ますよね。「ある程度パブリックにすることでSEO流入を期待できる設計にしよう」とかいうマーケが好きな人、いやいやパブリックにすると著作権の問題が出るから利用規約でしばってパトロールする管理画面が必要とかリーガル強い人みたいに。
コードゴルフと違って?ものによっては結構な工数を回答に使うので、最初は仲間内でわいわいやってみるのも面白いかもしれない。 VPoEとかSAのみなさん、いかがでしょうか。