Upgrade to Pro — share decks privately, control downloads, hide ads and more …

月間60万ユーザーを抱える 個人開発サービス「Walica」の 技術スタック変遷

MIYACHIN
January 20, 2025

月間60万ユーザーを抱える 個人開発サービス「Walica」の 技術スタック変遷

MIYACHIN

January 20, 2025
Tweet

Other Decks in Technology

Transcript

  1. • プロダクトマネージャー@BASE • 経歴 | IBM → M3(ソフトウェアエンジニ ア) •

    “Pay ID”というサービス(決済 & ショッピ ング)の開発を担当 自己紹介 MIYACHIN @miyachin_87
  2. 技術スタックの変遷(全体) Front-End 2018 2019 2020 2021 2022 2023 2024 Back-End

    Infra Database サービス規模   RDS
 立ち上がり期 (MAU 0 → 2000程度) コロナ沈黙期 (成長鈍化) 復活 & 怒涛の成長期 (MAU5,000 → 60万)
  3. 技術スタックの変遷(フロントエンド) Front-End 2018 2019 2020 2021 2022 2023 2024 Back-End

    Infra Database サービス規模   RDS
 立ち上がり期 
 (MAU 0 → 2000程度)
 コロナ沈黙期 
 (成長鈍化)
 復活 & 怒涛の成長期 
 (MAU5,000 → 60万)
 2021年あたりからいよいよReact優勢に。 Vue3に書き換えるくらいだったら、Reactに移行した方がよくない? ⚫vue ⚫react

  4. 技術スタックの変遷(バックエンド) Front-End 2018 2019 2020 2021 2022 2023 2024 Back-End

    Infra Database サービス規模   RDS
 立ち上がり期 
 (MAU 0 → 2000程度)
 コロナ沈黙期 
 (成長鈍化)
 復活 & 怒涛の成長期 
 (MAU5,000 → 60万)
 (2018年)サクッと作れる軽量フレームワークを優先 ▼ (2023年末)いい加減リファクタしないとやばい。 Flaskは非同期処理できないので、FastAPIに移行。
  5. 技術スタックの変遷(インフラ関連) Front-End 2018 2019 2020 2021 2022 2023 2024 Back-End

    Infra Database サービス規模   RDS
 立ち上がり期 
 (MAU 0 → 2000程度)
 コロナ沈黙期 
 (成長鈍化)
 復活 & 怒涛の成長期 
 (MAU5,000 → 60万)
 Herokuさんいつもありがとう。Basic Dyno(月額$7)を利用中。 一方で、他のサービスを網羅的に試せているわけではない。
  6. 技術スタックの変遷(データベース) Front-End
 2018 2019 2020 2021 2022 2023 2024 Back-End


    Infra
 Database サービス規模
   RDS
 立ち上がり期 
 (MAU 0 → 2000程度)
 コロナ沈黙期 
 (成長鈍化)
 復活 & 怒涛の成長期 
 (MAU5,000 → 60万)
 初期はHerokuの無料MySQL(500MBまで) 途中から月額$5のDaaS(Database as a Service)に切り替え かなりユーザー数が増えてからRDSに移行。
  7. • 3ヶ月の合計が20,000円くらいなので、1ヶ月平均 だと6,600円くらい • 60万MAUを捌く費用としては安く抑えられている のでは・・・? • ここ数年は障害は年に1~2回程度 • 正直これ以上下げれるとは思ってない

    ◦ 下がったとしても数百円レベル 月々の運営費用 サービス 利用月 請求額 Heroku 7月 ¥1,986 Heroku 8月 ¥1,802 Heroku 9月 ¥1,775 AWS RDS 7月 ¥1,346 AWS RDS 8月 ¥1,295 AWS RDS 9月 ¥1,362 Datadog 7月 ¥608 Datadog 8月 ¥612 Datadog 9月 ¥688 Netlify 7月 ¥2,994 Netlify 8月 ¥2,845 Netlify 9月 ¥2,808 合計 ¥20,121 ※ リアルなやつ持ってきました ※RDSはリザーブドインスタンスを購入して節約 

  8. 個人開発における技術選定に思うこと • できるだけ早くリリースしたい ◦ 学習にそれほど時間をかけたくない • サクッと追加開発してサクッとリリースできる • 運営費を最小限にしたい •

    メンテコストをかけたくない • サービスごとに言語が違う状態にしたくない 優先事項(特に開発初期) 実現したいこと • 学習コストが低い • 小さな構成で使える • コミュニティとドキュメントの充実度 • スケーラビリティよりもコストを意識 ◦ もしサービスが伸びたら対応すればよい ◦ そもそも個人開発におけるスケールなんて たかが知れている