2019/05/29
PORT Firebase × PostCoffee #2 勉強会メモ
https://stamp.connpass.com/event/128826/
下村 領さん @cyberryo
PostCoffee株式会社 CEO, 株式会社HERETIC CEO
– PostCoffeeというアプリを1ヶ月でリリースした話
– special tea coffeeからすると日本の珈琲屋はまずい
– 3/19にMVPリリース
– アプリのダウンロード数は2200
– ただ買えるだけのアプリなのでここで広告かけて集めても離脱ユーザーが多くなってしまう
– MonthlyMember特典
– トライアルに申し込みすると無料で付いてくるスターターキット
– ドリッパーだけで1200円くらいするらしい
– トライアルからのコンバージョン率51%
– 予定している機能
– AIバリスタ相談(データに基づくユーザーごとへのレコメンド、フィードバックデータからのコーヒー豆の開発)
村本 章憲さん @1amageek
Firebase Japan User Group オーガナイザー
Stamp Inc CEO
– Stamp:開発というよりは検証をしている会社
今日のお話3つ
– Core UX はシンプルである
– どうやって開発速度を上げているのか?
– グロースさせるとは何をどうする?
– Core UX はシンプルである
– Core UXはアプリに存在しないことが多い
– 複数の機能がCore UXまでの道のりを遠ざける
– 例:LINEはLINE ぱYの利用率を上げるために、アプリを分離した。
– コミュニケーションとるアプリなのに決済サービスはユーザーのやりたいこととは阻害されている
– Core UX を実現するための要件は小さい
– とにかくシンプルに一番近い道を通るように設計しないといけない
– どうやって開発速度を上げているのか?
– 汎用的な資産(ライブラリ)を先に作る
– Pring(Firebaseの設計フレームワーク)
– 可能な限りデータースキーマを制限したほうがいい
– 資産を使った開発
– 別の案件でも流用可能
– 開発が終わってからライブラリ化したほうがよくね?
– 運用・リファクタをやるのか?
– ライブラリが既存のコードを書き換えることはあるか?
→開発と同時にライブラリも開発
– 要件は毎回変わるので汎用的なライブラリには意味がない?
→設計してる人がいけない。汎用的なライブラリでいける
– グロースさせるとは何をどうする?
– Core UXへの近道を実現する
– Core UXがユーザーにフィットすることがわかればより便利に
– 便利なのかどうかはユーザーが判断
– アプリでできるUXは一部だけ、阻害しているもののほうが多い
– 美味しさが伝わらない
– カード情報の登録・入力ミス
– 住所の登録・登録ミス
– 電波がない・時間がない
– そもそもECってFirebaseでできるの?
– トランザクション機能を持つDBがあればECは作れる!
– ECではユーザー情報・在庫情報・決済情報などを複数のDBを同時に操作するためトランザクションが必要となる
– 問題となるのは規模・Firebaseの限界を理解すれば十分作れる
– CloudFunctionにorderを渡してuserとstoreをつなぐ
– ドキュメントは1秒に一回しか売れない
– ストックごとにドキュメントを持ってあげればいい
– 複数のCollectionにTransaction情報を保存するので1回の購入限度は数百
– 二重決済とエラーハンドリングには気をつけよう
– 在庫処理→決済処理→残高処理
– CloudFirestoreのrunTransactionのうちで全てを完結させる
– Transactionは5回までリトライされる
– 在庫処理も決済処理も終わってて残高処理でエラーが入ると決済上がってるのにものは上がってない状態
– Refund処理が必要になる
– StripeのRefundはCaptureした場合、手数料かかり、しない場合は手数料かからない
– サブスクの処理は?
– StripeにはWebhookがある
– 今回使ったのはinvoice.payment_succeeded