見出し画像

開発ノート Vol.1 MVPを実装せよ

2023年7月12日 開発フェーズ1の実装完了まで
MVPとは:Minimum Viable Productの略。ユーザーが価値を感じることができる必要最小限のプロダクトのこと。MVP開発は、MVPを実際にユーザーに使用してもらい、新規事業にニーズがあるのか、価値があるのかを検証すること。

【フェーズ1 実装内容】
運営ページ
 ∟企業情報登録画面、ユーザー情報確認画面、マッチング情報管理、成約管理
ユーザーページ
 ∟TOP画面、会員登録/ログイン画面、企業情報、マッチングした企業、新規登録企業、プロフィール画面
企業ページ
 ∟エントリー情報管理

【開発環境】
バックエンド
 ∟PHP(8系)、Laravel(10系)、Nginx
フロントエンド
 ∟Nginx、PM2、Node.js、React.js(Next.js)

【これまでのスケジュール】
4月 起案
5月 チーム結成
    事前登録LP
6月 MVPの定義策定
    開発開始
7月 glorious_ 公式サイトオープン

メンバーインタビュー

開発サイド
ディレクター:Hisamatsu🦁
デザイナー:Ohdama🐰
エンジニア:Sakai🐱

事業サイド
プロデューサー:Hamada🐶
プロジェクト責任者(起案者):Inoue🐻


ー 導入ツールの選定について

Inoue🐻:みなさん、ひとまずフェーズ1完了お疲れ様でした!これから、毎フェーズごと、こうして振り返りを行い、開発ノートとして残していければと思います。
フェーズ1ということで「何をどうやって」には特に向き合いましたね。それぞれ使ったツールで印象深いものがあれば、教えてください。

Hisamatsu🦁:あげるとしたら、フロントエンドAIですね。
導入の背景は、そもそも社内にフロントエンドエンジニアが不足していたことです。フロントエンジニアのタスクとしてコア業務と言える作業があるんですけど、ものすごい工数を取られるわりに、そう進捗が上がるものでもなくて、そこに時間を使うくらいなら他の機能の実装だったりに注力したいよね、というのが課題としてもありました。開発者としても、やっていて楽しい作業でもないし、あんまり良くないなと。
で、フロントエンドAIを使うとそこを割と大幅にカットできるんです。画像を読み込んでHTMLをある程度読み取って勝手に作ってくれます。その生成物に対して、タグを追加してほしいだったり、細かく調整できまして、このツールを導入するのは初めてのプロジェクトでしたが、タイトなスケジュールでこなしていかなきゃいけないって状況では、本当にかなり助かったって感覚はありますね。
今後もフロントエンドがやらなくても、デザイナーに依頼するとか、結構いろんなことができちゃうなと思いました。

Sakai🐱:そうですね。僕の方からは特にないんですが、何を使うのかという点においてはスピード重視ということで、使い慣れたものを選びました。

Ohdama🐰:デザイン面で言うと事前登録のLPでは、STUDIOを使いましたね。ノーコードツールのSTUDIOを私は実装してないのですが、他のデザインチームのメンバーが実装してくれました。やっぱり今Twitterとかでもノーコードツール、STUDIOのことってすごく出てくるので、私も使えるようになろうと改めて思いましたね。あとは、フロントエンドAIについて、先ほど今後はデザイナーがってお話がありましたが、全くHTMLのことが分からない私でも、このサービスを使えばアセット書き出しだったりの細かな所、コードが出る部分、解析って言うんですかね?そこまでは、確かに出来るなと感じました。 今回、フロントエンドAIを使っているって知らなかったんですが、「このページをサービスを使って解析、HTMLを書き出しておいてほしい」と言われれば、私でも出来るなっていう所感はありました。
あとは、今回事前登録ページで主に使ったサービスがXDなんですが、XDのワイヤーをHisamatsu🦁からもらって、それを流用して作ったんですが、Sakai🐱がアカウントを持っていなかったので、もしかしたらfigmaでやった方が良かったのかなとも思いました。なので、最初の段階でXDとfigmaどちらが良いかっていうのを、確認しておいた方が良かったのかなという風には後々感じました。

ー 一番大変だったことは

Hisamatsu🦁:そうですね。ゴールは見えているものの、リリース当初には何が必要なのか、そもそもこれさえあれば良いよねなのか、どこまで絞ってどういうものがコア機能なのかっていうところが、やっぱり僕自身まだ弱くて、その辺りは結構苦労した印象です。振り返ると「盛り過ぎたかな?」ってところもありつつ、もっとこういう方法もあったんじゃないの?というのは、開発終盤になって風邪引いて寝込んでる時とかに思いました笑

Inoue🐻:いや、そうなんです。本当にコア機能の選定が一番難しかったですね。頭で最小限に、コアなものをと思っていても欲もあれば気持ちもあるから、つい乗せちゃおうとしちゃう。ただ、やってるうちに、あれフェーズ1ではいらなかったな、こうだったな、ああだったな、って思うものの、走り出したらもう変えることも工数だから、決めたことはそのまま行くしかない。それが、慣れなくて大変でしたね。

Ohdama🐰:新規事業を立ち上げるという経験が今まで無かったので、納期がすごく短くて、当初の予定から最小限に削ぎ落として、結局、デザインは約1週間で納品したんですけど。削ぎ落とすことに関しても、Hamada🐶の指示をもらって動いていたので、そこが自分の判断では難しくて。スマートフォンだけでいこうとか、こういう機能は要らない、とか、シンプル化していく事やスケジュールの工数管理みたいなのが、もっとうまく出来れば良かったなと思いました。 学びも大きい時間でした。

Sakai🐱:プロジェクト立ち上げからリリースまでの期間が短いので、設計・実装に時間を作ることが大変でした。インフラ部分において、マネージドサービスの利用をすることでできる限りアプリケーションに集中できたのは良かったと思いますね。

Hamada🐶:大変なのは開発して手を動かしてたみんななので、そんなに大変だったってことはないですけど、強いて言うなら、”一般的なサービス”のイメージが頭にこびりついている中で、新規事業の立ち上げ時期のサービスって、それとはまるで別物だから、最初は8月下旬くらいのスケジュールが出てたけど、そんなの作ってたら変更したい時に気軽に変更出来なくなる。その辺のマインドを皆に変えてもらう、みたいなところが結構大変だったのかな。Hisamatsu🦁が言うように、もっと短くできたと思うし、作り過ぎだったかなっていう風にも思ってるので、今後はもっと簡素に作ってというのが、これからまたみんなも身に染みてくると思いますね。
これからは、恐らく作った機能を丸っと1回消しちゃって、新しくこれ作ろうぜってパターンがくるんですよ。その時に簡単に作ってたらそれをしやすいし、初めはその繰り返しなので、そこをやっていきながら、みんなもその認識ができてきて。ようやくスタートラインに立てたかなと思うので、そこまで持っていくのがちょっと大変だったかなとは思いますね。

Inoue🐻:社内アンケートもそうでしたね。ちょっと運営の方の動作に慣れたくてテストとして社内のメンバーに利用してもらったんですが、一般サービスを見る気持ちでMVP段階の、超初期段階のglorious_を見せちゃったもんだから、ツッコミどころもかなり多かっただろうというか、そりゃそうだよね。という内容でしたね。
共通で最小限にする、削ぎ落としが難しかったってことだと思うんですけど、でもすごくいい経験でしたね。本当に。

Hamada🐶:多分、まだ頭で分かっても身には染みてないと思うんですよ。「簡素に作ること」までは身に染みたと思うけど「なぜ簡素に作らなきゃいけなかったのか」っていうところは、原体験を以って感じられると思います。

ー 学びやポジティブだったこと

Sakai🐱:機能自体の具体的な落とし込みについて、開発当初のみしか行えず、開発サイドとビジネスサイドでの乖離があったかなと思います。また認識齟齬に対しても、開発が走り始めるとそこまで時間が取れなくて。PoCフェーズのサービス立ち上げが初めてだったこともあって、開発工数とコア機能の選定の重要性を痛感しましたね。
また、機能を詰め込むほど1機能にかける時間が減って心理的安全性が担保できなくなったので、期間が短いほどサービスとして最小の機能でリリースゴールを向けられると、もっとビジネスサイドと深く話を進めながら開発が進められたかなっていうのは思います。

Ohdama🐰:ちょっと重複しますが、「シンプルに作って、壊す」って作業をまだしてないのですが、「壊す」を前提とした「シンプルに作る」という考え方はすごい学びというか、感じましたね。ついついデザイナーって、作り込んじゃう。UIを考えて何が足りないか、ユーザーだったら何があったら便利かということを考えて、盛りすぎる所も自分で感じました。削ぎ落とすことの大切さは本当にちょっと身に染みてます。

Hisamatsu🦁:学びって所だと、Inoue🐻やHamada🐶の思想というか想い的なところと、開発側の人を繋ぎ合わせてどこに落とし込むか、っていうところの感覚は、特に開発終盤にかけてなんとなく、こうなのかなっていうのがありました。だから、次回以降は序盤からもっとうまく擦り合わせていける気がします。

Inoue🐻:もう本当に全ての過程が学びではありました。ただ、最初に皆さんにお願いした通り、それぞれが今誰かを率いているわけじゃないけど、長としての自覚を持ってやってほしいという部分、本当に能動的にしっかりやってくれるので、自分も自分の領域でできることちゃんとやらなきゃって常に刺激になりました。バレットグループってよく「何をやるかより誰とやるか」って言いますけど、今回改めてそこを肌で感じましたし、これは人事(Inoue🐻は人事で中途採用業務を兼任)としても、大きな学びになりました。

Hamada🐶:みんなよりは事業の立ち上げの経験がありながらも、やっぱり難しいなって感じましたね。コアなもの、これだけは動かせないよねってものを1個考えようって言ったものの、そこがフワッとしてしまって。この辺を固めるのがいかに難しいことなのかを改めて学んだし、何かマニュアル化できる部分があるならマニュアル化してもよかったなと思いましたね。まあ今回これをみんなで経験できてよかったと思います。ただ、グロースさせるのはもっと難しいので、ここからまた難しさを感じつつ、それが醍醐味でもあるので、学び続けていければと思います。

ー 開発フェーズ2への意気込み

Hisamatsu🦁:そうですね、多分フェーズ2になると「今何が足りない?」「これって本当に必要?」っていうものが、もっと出てくるかなと思っているので、そういうところの擦り合わせをしつつ、もっと精度を高めた開発だったり設計が出来たりするといいのかなと思って、そこを目標に頑張っていきます。

Sakai🐱:まだまだ欲しい・理想の機能がない状態なので、これから色々と要望が多くなると思っています。開発工数が多くないのでリソースに対して目的に沿ったもの、機能をシンプルにする、すり合わせを行うことで素早く、確実なリリースができるように頑張っていきたいです。
またフェーズ1ではできなかった技術的課題や開発効率を上げるためのタスクなども、積極的に行えればと思います。

Ohdama🐰:一旦フェーズ1で削ぎ落とした機能で、やっぱり必要だ、追加するって作業をやりたいです。デザイン面で「ここ気になる!」という所も今回の開発では気にしない、指摘しない、という方向で進めて来ましたが、タイミングをみて調整できればと思っています。作業として1週間で、スピード重視で作った部分があるので、私が作ったものでありながらも気になっている部分を共有し、皆さんにフィードバックをいただきながら判断、改善できたら嬉しいです。

Inoue🐻:私で言うと手を動かしていく部分ではないので、フェーズ1が終わって、次のフェーズ2の中でのコアは何かを私がしっかり定めていかなきゃいけないと思っています。そこはHamada🐶の力も借りながら、目の前のことにとらわれずコンセプトを実現していくっていう所がゴールなので、勉強しながら頑張ります。あとはまずは、クライアントを増やします!

Hamada🐶:フェーズ2からは企業やユーザーが増えていくと思うので、そこのオペレーションが発生します。そこを踏まえるとまたガラッと変わる部分があると思うので、それは楽しみですね。ただ、フェーズ2までは一般的なサービスの領域にまだいけないと思っているので、フェーズ3,4で恐らく発生するであろうピボットも想定しながら、巻き戻しや方向性の変更が必要となった時、その勇気をちゃんと持とうというのが自分に求められていることかと思います。まあ、ただこれからですが、楽しみです。


glorious_公式サイトはこちら