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
シード期のプロダクト開発について / Product Development in the S...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
showmant
August 12, 2021
Programming
2.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
シード期のプロダクト開発について / Product Development in the Seed Phase
アルプにご興味ある方は以下をご覧ください🙇
https://thealp.co.jp/recruit
showmant
August 12, 2021
More Decks by showmant
See All by showmant
Why Alp Choose Modular monolith Architecture
showmant
2
4.5k
創業3年のSaaSスタートアップが 規模急拡大に対してアーキテクチャを変革していった話 / Scalebase's architectural transformation
showmant
0
960
モジュラモノリスで表現する複雑なドメイン領域と境界 / Expressing complex domain regions and boundaries with 'modular monoliths
showmant
8
13k
SaaS企業をスケールさせるためにScalaを選択した理由と1年間の振り返り / Why Alp Choose Scala To Scale The Application
showmant
2
2.2k
Other Decks in Programming
See All in Programming
OSもどきOS
arkw
0
590
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
6.5k
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
120
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
230
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
14
5.8k
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
590
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
260
Oxlintのカスタムルールの現況
syumai
6
1.1k
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
800
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
300
act1-costs.pdf
sumedhbala
0
100
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
360
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
How GitHub (no longer) Works
holman
316
150k
Code Review Best Practice
trishagee
74
20k
Marketing to machines
jonoalderson
1
5.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Evolving SEO for Evolving Search Engines
ryanjones
0
220
Bash Introduction
62gerente
615
220k
Paper Plane (Part 1)
katiecoart
PRO
0
9.2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
Transcript
シード期のプロダクト開発 Shoma Takeo
自己紹介 2 2
自己紹介 ブロック2 アルプ創業前 2014年に株式会社サイバーエージェントに入社。動画広告配信事業にお ける開発責任者を担当。その後ゲーム事業者向けのリターゲティング広 告配信事業の米国事業立ち上げに開発者として従事。 アルプでは 共同創業者、開発担当取締役。 初期はバックエンドエンジニアを主として、現在は開発組織全体のマ ネージメント・採用を担当。
キーワード Scala ラーメン(最近は煮干し系)・二郎 スポーツ観戦(野球・NBA・オリンピック) 竹尾 正馬 @showmant_ タイトルのみのブロック タイトルのみのブロック
会社紹介 4 4
None
None
プロダクト紹介 7 7
None
None
本題 1 1
開発初期のプロダクト開発フロー 1. ヒアリング 2. ドメインモデリング 3. プロトタイピング 1年程度で100社程度のあらゆる サブスクリプション事業者へのヒ アリング
モデリングに重点をおき、原則は下記3工程のループをとにかくまわす 開発初期からドメインモデリング ・設計に超注力していた 簡易なバックエンドとフロントエ ンドのプロトタイプを数ヶ月で作 成。作成後にプロトタイプ版から 現在のScalebaseを開発 • エンジニアも同行 • 先方の業務オペレーション細 かくヒアリング • ドメインモデリングや3のプロ トタイプのレビューも行う • 設計に注力することが数年単 位で見たときに最速デリバ リーの根幹であると仮説 • ヒアリングや市場調査が種 • 概念図をとにかく書いた • セールス時のデモとして利用 • ヒアリング時により深い議論 をするために活用 • 設計はモデリングの結果を反 映したものになっていた
None
開発フローで失敗したこと ヒアリング 失敗したこと ドメインモデリ ング プロトタイピン グ (結果失敗ではないが)toCよりもtoBにペインが大きいことが分かった ヒアリングをすすめると、toCよりもtoBのほうが管理の複雑性が高くいことがわかった。ヒアリングを重ねる前にtoCだと 決め込んでクレジットカード決済用の実装などを進めていたが、toBでは請求書払いが圧倒的に多く、先に開発した部分が無
駄になってしまった。 ドメインモデリングの型をつくれず、資産化できなかった ※いまも苦戦中 ドメインモデリングは概念図など様々な図を利用して議論しながら行われてきた。 DDDを全社で取り組むにあたってはドメ イン理解が非常に重要で、本来はその時の議論の過程、図などをしっかりとメンテナンスしていくことで資産化し、新しい メンバーへの教育材料になる。これができておらず、「なぜこうなったのか」ということの説明に苦心することが発生。 プロトタイプは別言語を選定したほうがスピードを出せたかもしれない プロトタイプで作ったものを資産化したいという考えから、製品版を見据えてScalaを採用していたが、プロトタイプが直 接製品版にならないということが分かっていたのであれば、スピードを重視して、他言語・フレームワークを利用したほう が良かったかもしれないと思う。
Jenkinsを使ったCS オペレーション クリーンアーキテクチャの強みを活かした実装 顧客がダッシュボードで実行できるべきだが、フロントエンドの開発工 数を取るのが難しく、実装できていない機能がプロダクトが未成熟の状 態では多発する。このとき、バッチインターフェースを用意する形で バックエンド実装し、Jenkins上からカスタマーサクセスメンバーが実 行できるようにすることで「できないオペレーション」をへらす。フロ ントの実装ができる状態になったところで、クリーンアーキテクチャで いうコントローラー層のみを差し替えれば、すぐに顧客が利用するダッ
シュボードでも利用可能なAPIに変換できるので無駄な工数を極限まで減 らすことができる。 Tips タイトルのみのブロック
アルプのぶんぶん丸 ブロック2 ぶんぶん丸を使ったCI/CD コストの圧縮 ScalebaseではScalaを採用しているが、Scalaはコードベースが大きく なったり内部プロジェクトの数が多くなったりするとビルド時間が増加 する。高速にCIできることが開発者の生産性や精神的なストレスの軽減 につながると信じているが、いかんせん CI系のSaaSは料金が高い。 スタートアップにとっては時間もお金も貴重なのだから「安く」・「速
く」ビルドを回したい!そんな課題を解決するのがこのぶんぶん丸。な んと20万円程度で組めるビルド専用の最強マシンなのだ。Scalaのビル ドに最適化された圧倒的スペックを誇り、AWS 環境で利用できるインス タンスよりも価格性能比で優れている。2.5年経った今だに現役であり、 費用対効果は抜群。 最近はエンジニアが15名となり、スケールアウトが求められたため、2 台目の新設、渋滞時にはEC2を利用した並列化を実施中。 Tips タイトルのみのブロック タイトルのみのブロック
We Are Hiring 1 1