Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
スタートアップの初期設計、今ならこうする
Search
rn0rno
February 04, 2026
Technology
13
0
Share
スタートアップの初期設計、今ならこうする
2026.2.4 ひとり開発・少人数開発で全部やったエンジニア LT 会 & オフライン交流会
https://ydm.connpass.com/event/380280/
rn0rno
February 04, 2026
More Decks by rn0rno
See All by rn0rno
スクラム開発を始 めて捨てた一年の棚卸し
rn0rno
0
56
アーカイブ配信でもライブ感を味わいたい / cookpad_tech_kitchen#23
rn0rno
0
990
Other Decks in Technology
See All in Technology
260422_Sansan_Tech_Talk__関西_vol.3_データ活用のリアル__矢田__.pdf
sansantech
PRO
0
120
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
5
1.8k
音声言語モデル手法に関する発表の紹介
kzinmr
0
130
独断と偏見で試してみる、 シングル or マルチエージェント どっちがいいの?
shichijoyuhi
1
110
国内外の生成AIセキュリティの最新動向 & AIガードレール製品「chakoshi」のご紹介 / Latest Trends in Generative AI Security (Domestic & International) & Introduction to AI Guardrail Product "chakoshi"
nttcom
4
1.4k
ServiceNow Knowledge 26 の歩き方
manarobot
0
150
UIライブラリに依存しすぎないReact Native設計を目指して
grandbig
0
130
ネットワーク運用を楽にするAWS DevOps Agent活用法!! / 20260421 Masaki Okuda
shift_evolve
PRO
2
220
AIが書いたコードを信じられない問題 〜レビュー負荷を下げるために変えたこと〜 / The AI Code Trust Gap: Reducing the Review Burden
bitkey
PRO
8
1.4k
AWS Transform CustomでIaCコードを自由自在に変換しよう
duelist2020jp
0
120
巨大プラットフォームを進化させる「第3のROI」
recruitengineers
PRO
2
1.1k
AI バイブコーティングでキーボード不要?!
samakada
0
600
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
96
14k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
The SEO Collaboration Effect
kristinabergwall1
1
430
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Navigating Weather and Climate Data
rabernat
0
170
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
380
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Believing is Seeing
oripsolob
1
110
Optimizing for Happiness
mojombo
378
71k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Transcript
スタートアップの 『初期設計』、 今ならこうする Momose Ryoya (@rn0rno) AnyReach株式会社
自己紹介 新規サービスの「0→1」「1→10」フェーズが 大好きです。 とにかく速く作って検証する、いわゆる爆速 開発が得意領域。 現在はAnyReachにて、開発全般と技術選 定、組織づくりに奔走しています。 Momose Ryoya
AnyReach株式会社 #0→1立ち上げ #PoC #Prototyping #組織づくり coloria 0→1 coloria 香りのギフト 0→1 AnyGift Wedding 0→1 AnyGift 1→10 cookpadTV(現natslive) 0→1 storeLive 0→1 @rn0rno
AnyGiftとは 自社ECサイトに簡単に組み込め、「住所入力なし」のギフト体験を提供。 プレゼント需要の取り込みによるCVR向上や、新規顧客獲得に貢献するSaaS型のプロダクトです。
今起きている「痛み」 絶え間ないエラー通知 DynamoDBの スロットリング ログコストの肥大化 Slackに大量のエラー通知が鳴
り止まない状態。 どれが本当に重要なのかが埋 もれてしまい、開発チーム全体 が「アラート疲れ」に陥ってい る。 サービス成長に伴い検索要件 が増加。 無理なScan操作やインデック ス不足により、スロットリングエ ラーやバックエンド処理の肥大 化によるタイムアウトも頻発。 ユーザー体験にも影響が。 調査のために「とりあえず全部 出す」方針でログを出力しすぎ た結果、CloudWatch Logsのコ ストが増加。 ログの量も多く、肝心なときに 欲しい情報を見つけるための 調査コストも大きい。 💔 精神的負荷の増大 🚫 パフォーマンス低下 💸 インフラコスト圧迫
原因①: NoSQLの罠 立ち上げ時の判断 成長後の現実 ⚡ 開発スピード最優先 🌐 サーバレスへの期待
🗒 JSONを投げるだけ 仕様が固まっていないため、スキーマ レスで柔軟に変更できるDynamoDBが 魅力的に見えた。 インフラ管理コストをゼロにしたく、ス ケーリングもAWS任せで楽ができそう。 バックエンドからはJSON構造を投げる だけで保存でき、実装がシンプルだっ た。 🔎 複雑な検索要件が増加 📈 Scan & Filter の乱用 🗃 GSIが増大 「日付範囲で絞りたい」「商品名で部分 一致検索がしたい」など管理画面の要 件にNoSQLが不向き。 キー設計が合わず、結局全件スキャン したあとアプリ側でフィルタリングし、コ ストと速度が悪化。 検索パターンの数だけインデックスが 増え、書き込みコストが肥大化。
学び①: データベース選定 ☑ 1年後の検索クエリは想像できるか? ☑ アクセスパターンは「固定」か? ☑ リレーショナルなデータ構造か? ☑ 将来の分析(DWH/ETL)は見据えるか?
データベース以外のインフラで回避するならNoSQLでもOK 全体の開発工数を踏まえたデータベース選定を 迷ったらRDBを選びたい (スキーマの変更柔軟性より、クエリの変更柔軟性) 「とりあえずGetItem」だけでなく、管理画面での絞り込みや全文検索は必要になりそうか? NoSQLはアクセスパターン設計が命。将来の機能追加でアクセスパターンが増えそうならRDBが無難。 注文、ユーザー、商品、決済…と、JOIN(結合)が前提のデータモデルではないか? 「SQLでサクッと分析したい」というビジネスサイドの要求にどう応えるか?
原因②: 追えないエラー EC特有の外部連携 大量のログに疲弊 🔌 多種多様なAPIコール 🚀 非同期処理がブラックボックス化
決済、メール配信、物流連携、カート連 携など1つの注文処理で複数の外部 サービスと通信。 相手先のメンテナンス、一時的なタイム アウトや、レート制限エラーが日常的に 混在。 注文処理と、それに伴う外部サービス への通信が非同期化しており、一連の 流れが追えない。 📝 テキストログ頼みの限界 ⏰ 調査コストの肥大化 「エラーログはでているが、最終的にリ トライで成功したのか?」はgrepしないと わからない。 1件の問い合わせ調査にエンジニアが 30分張り付き、開発時間が削られると いう悪循環。
学び②: 調査容易性と回復戦略 調査容易性 回復戦略 ✅ Trace IDの伝搬 APIリクエストのIDを、Lambda、SQS、 DB保存まで一貫して引き回し、マイクロ
サービスでも簡単にログを追えるように する。 「何が起きたか」をデータで把握 「失敗は必ず起こる」前提で ✅ 重要なイベントはDBへ 注文処理結果などはログではなく、SQL で即座に引ける「履歴テーブル」「監査 テーブル」に保存する。 ✅ 冪等性の担保 リトライしたときに、二重決済や二重送信 が行われないように冪等キーなどを利用 した冪等実装を。 ✅ 適切なリトライ戦略 リトライすれば回復するエラーと、そうで はないエラーを切り分けた上で、適切な 間隔でリトライを実施する。 ✅ 再試行限界に達したときのアラート あとから手動でリカバリするため、再試行 にも失敗したことを検知できるようにす る。
まとめ データ特性でDB選定 重要なイベントは テーブルへ 失敗前提の 回復戦略
「なんとなくNoSQL」「スキーマ 設計を楽しよう」は危ない。将 来のアクセスパターンや結合 要件を想像して判断。 ログは「流れ」を追うものと定義 して、「結果」や「状態」は履歴 テーブル、イベントテーブルに 永続化し調査コストを下げる。 外部連携は失敗する前提で、 リトライ、冪等性、DLQの初期 設計を行う。 あとからの運用コストを下げ る。 ⚡ スタートアップにおいて、スピードは正義 ただし、未来の自分のスピードを苦しめないようなガードレールを作っておこう
AnyReach株式会社 We are hiring!