Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / A...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Keisuke Kobayashi
September 20, 2025
Programming
3.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
PRODUCT HISTORY CONFERENCE 2025の登壇資料
Keisuke Kobayashi
September 20, 2025
More Decks by Keisuke Kobayashi
See All by Keisuke Kobayashi
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
170
AI 1st でエンタープライズ SaaS を立ち上げる / AI 1st Enterprise SaaS
kobakei
1
350
今日から始める依存性の注入 / First Time Dependency Injection
kobakei
26
7.8k
iOSアプリの技術的負債をどう返済したか / How to repay the technical debt of iOS app
kobakei
2
1k
iOSアプリ内で不正なSSL証明書を検知する / SSL Pinning for iOS apps
kobakei
34
12k
Kyashアプリ開発の現場
kobakei
4
3k
Review of Google I/O 2017 & Prepare for Google I/O 2018
kobakei
0
350
APIクライアントをCodableで置き換えた話
kobakei
0
1.7k
開発者が知っておきたい通知の歴史
kobakei
9
7.9k
Other Decks in Programming
See All in Programming
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
330
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
320
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
7
1.6k
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.1k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
410
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
340
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
130
The Rails Doctrine Decade
koic
2
470
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
1.7k
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
5.3k
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
480
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
380
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
Between Models and Reality
mayunak
4
480
BBQ
matthewcrist
89
10k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
WENDY [Excerpt]
tessaabrams
14
40k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
How to build a perfect <img>
jonoalderson
1
6.1k
The Invisible Side of Design
smashingmag
301
52k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
390
Transcript
÷ýð¿ø~²AI 1st{Y¿y» <SaaS is deadfïwo}ë»±{< j__kickflow ×ýCTO'q\wm /÷y @PRODUCT HISTORY
CONFERENCE 2025
¯?}Ï /÷y j__kickflow ×ýCTO'q\wm ÷ýð¿øø¯xHRø¯²ûï ðó¿¸óù'õýóø¸óù_w²ç_ ÷ù´ùüøw2Q~ X(Twitter): @kobakei122#GitHub: @kobakei
_}Ï 1 2020~2o j__kickflowwm g_SmartHR~õÏm/_ 2 2020~5o ³zýüóñ1µüó¹úÛ 3 2021~10o
·üùù¶óù~ϯ¿Ô1MBOÿ}÷÷{¸»¿ß 1 µüó¹/®} 4 2023~10o ÷ü·úüºAù¶óù~ϯ¿Ô 5 ÿ õ40]2vq÷ýð¿ø÷~14]ÿ2025/09/01fù
µüó¹}Ï ¸ó¿ü÷ù´ºUq û'ÿü¿õýüSaaS <kickflow= ¿ù¶ù~Ûo~ù¿uxºó÷ün~ýg²oy»1ttx s׺²wýÕ {{o]<¸ó¿ü÷ù´ºUq{~'óß 1~wARRÿ~}~ßþ|2]~úü¹wrÿo
Îoûysx SaaS is deadfï²o}ë»±{1_|<AI²_º_~¸v{v_=²ogwv y?wY¿w¸vxwvt»×º}²zûw~y2
SaaS is deadÿ
SaaS is dead ßgß~SaaS~f1õwtfïx2 AI¸ü¸·óø|´ó¿üõ·ü¹{ AI|öü¶üxöçÿûy»¸v{zº1ßg ~²÷ú±ü·÷óUI/UX|O{z»2 AI{¸»~~³ò÷³ö³W AI|~÷ý»¹²¯×Ww1ºw²¿Õîz ÷ýð¿ø²Ï{~w}»¸v{z»2
^|~ýÜxCAC~¿º þ\~ßòxAI{¸»û÷Ww1õÿûsß ³¹ø|Ngw1^||ýÜök{z»2
s5¹¿üø²ó÷ /Omxuzº1o}~Û|ítsx'×ö{×q»sx|g /~2 SaaS is deadfï²o}ë»±{1s¼~w~~Û²kvvY¿ wvt2
AI 1st <AI 1st=xtvðúõü²ÿòwv1ywAI·õøy»sx² ~Û2 yyv~o}~Û´mÛ²AI²_ó{xv1_'Ïm²Y¿y »2 ÷ýð¿øø¯pqwz1ó¸ý¹ø¯´³üýüüøø¯²ÿ í{1yõwAI²tszy2 ýÏ
õyõ{Dify~²»¶óø²ÞN õyõÓò~AI²÷ú³óú²üÿÞ¯rº ÏÿAIøû÷üóø1VoC~¯×VÞ1Autify~ö¹ø³ü ùor ²q½³Îo~¹ù´ù²AIÿGammaw_rwvt~yÿ
÷ýð¿øø¯~AIo ÷ýð¿ø{AI²}¿ ÷ýð¿ø~{AI²oy»
÷ýð¿ø{AI²}¿
û'ÿü¿õýü{zq»AI /~|Oÿozß {{û/|y»sx{ow|r»2ßyz¯ ×W÷w1AIr~wÜûözr²ÿy2 AI{¸»û÷W~ÿýg ûÝz|¹²y×zmÛwrº1wË 1 1ûv }¼~¼~÷ý»¹wAI|×özû÷W²² ¹y_w|r»2
kickflow~AIº÷·÷óÿ³ û'ÿü¿õýü{·y»mÛû÷²AI{¸º×ö{}Õ2 AIwËÜû /ß~õ¹üðx~/?²AI|¯×W2OCRý{¸º1Ë nþzy~Õû²öçõ¹üð{îy»sx²ÿý2 AIõ¹üð_r ö½¹ø´ß{¹wËõ¹üð²¯×or2ÞýÕ~¹ ¿úüó·÷óø{¹~õ¹üðû¯²}[2
AIº÷·÷ó²ox»âÛ OpenAI API Rails²÷ú±ü·÷ó{¹OpenAI Ruby SDK}uw| sûw22025~9oÿ1ò÷ûGPT-5²o2 ë°Wû?²{owv1JSON SchemawgÛwõ¹ üþóøwü¹ýó¹²oru{1öü¶ü_{ß
f2 Elasticsearch S5½üÿüù}o{owvt|1RAGo~ù¿ øû}ÿ»þóö³ó¿}{²o2 Elasticsearch 8.15{¹1semantic_textßwu¹{ÿ{ {2 ß±¿ù¿øû~or{1Elasticsearch}¿~ E5²o2
AIý²_»x}{/Ï{wvt»sx öü¶ü{÷wtsx²u{zt ^~o~[~Om~pAI{c¼vtzt2 ÷ýó÷ø/?~¸vzí_²öü¶ü{t»~w z1UI/UX~ÏtwAI|÷¹zt{ou¼1ß?{ öü¶ü_|UNwvt»2 ýþö{õý²úúü¹y» ç[~ûÿü¿õýüSaaS~o{²ó÷÷üø|\ þwvt»²~²]zztow1AI{ýþö{÷Ï w1ç[ýÕxÿwWwöü¶ü~ß²¿±»2
÷ýð¿ø~{AI²oy»
AI²ow~_v ¸ó¸û²pqwz1PdM'÷¶´úü'QA'ö¿û»ûµýüøyyv~÷~|AI²tszy~}~2 ¸ó¸û² Claude Code1Devin1GitHub Copilot1CodeRabbit QA¸ó¸û² Autify Nexus1Claude Code1
Devin1Dify PdM'÷¶´úü Roo Code1Devin1Flyle AI1Gemini Canvas1Dify
~÷ý»¹Õ~AIo Ïÿõý~~|\ ðó¿ýÀ_r Flyle AIwVoC²}'VÞ2 þÛÿ Roo Codewßùþ_r2 ÷¶´ó Gemini
Canvasw÷ýø¿´ ÷_r2 ù´ö³ó°wAIo ¯'ßÍ Claude Code1Devinw ~2CodeRabbitwüóõ ü2 QA Devinwö¹øßùþ_r1 Autify NexuswE2Eö¹øß Í'߯2 úúü¹ µýüø Difyw~w AIøû÷üóø|¯×ß
³ü÷³ó°¸ü¸·óø~^/ 2022~{¹GitHub Copilot²owvt|1 2025~{¹³ü÷³ó°¸ü¸·óø~^/²Û2 Cline{¹}¾²Ûw1Roo Code{û¯w1ÿClaude Code |Õwm2 Claude Maxÿ200ùû²yõ{ÞN2
MCPSerena´Context7²owvt»/|[t2 Vibe Kanban²gß^/2 ¯Vgß//wCodex CLI²}¾o CLI|Oc¼zPdM´÷¶´úü1Roo Code²o
Claude Code~o ñòú~uÙ »ö´úw{\13õ±´û~ñò ú²_r CLAUDE.md{¹Ów »¹¿ð¹ùó·õ³þóù Gití_1Pull Request_r1UIß Í1OpenAPI¹½üþ_rzy1[
~_m²³þóùWwvñüðÕ wqo µö¸ü¸·óø ¿¹¿tx{{Ww¸ü¸·óø ²_rw1þw³óö½¹øw µö¿¹¿²ß¯
¹úó¿ß×~ s¼~wesawûvwvtßùþ1½ü¹³üùx\xGitHub úý¸øú{û¯2 s¼{¸º1³ü÷³ó°¸ü¸·óø|ßùþ1¯þ1³üù yyv²ýÖÿý{2 ¸ó¿ü÷ù´ºUq~÷ëzßù²1AI|ßͲÓwwz|¹û÷ö{ ù½õñóøW Roo Code{<÷ýÀ¿øþýü¸óü=xtv»¹¿ðòüù²ÿòy» sxw1o÷wº~ßùþ²AIw_r
³üùüóõü~AIW ³ü÷³ó°¸ü¸·óø|/ßoww³üù~ üóõü²1CodeRabbit´Claude Code GitHub Action{¸º/ø¯×W2 [_ö¹ø´úó¿üx}\¿{vY{øöz üóõü²¿¹{vzsxw1/~üóõü ¬÷²ÿ2
ð°ñ±óø~/k¿ÿ Asana{ð°ñ±óø|_ru¼»x1¯×ö{ GitHub Issue{³~u¼1Claude Code GitHub Action|¯×ö{/k¿ÿ2 [VïN~ð°ñ±óøs¼pqw?V{ßö~ {Û´ïkoÝ~_r|ÿý2
AI{¸»[¿ÿßÿi18n /ø~zûù¸º~rsoÿÿ}T_'T_x×ÿ x~ÿ»²Claude Sonnet 4wÿß2o_~ÿ»µüó¹{yv wãöO³¹øwßÿ2 ùñ´óo²ÿ»þ{³y»sxw1Web²÷ú±ü·÷ó xwv¯wzÿ»2 u¹{CIwÿ»²¯×W2ðóñAPI²{ow³¹øZ2
AIøû÷üóø ö¿û»ûµýüøñüð|Dify²svëû2 Zendesk~øû÷Ï´Þû~_t\¿{}{¹ÿûwúüó¸²S{1AI|öü¶ü~î_{¯×ß2 î_VÞ~²sv¸ü¸·óøÕøwVÜy»sxw1Webz{¹API~w_ßÿß2
gß{ÿ}¼w1AI 1st{z¼~{ÿ
ÿöÛ Ûßözrÿ~~ ñóðü~Ý}o´mÛõýü/}Y¿s|1Ïxok~Pull Requestuzy|/}ßòy»{¯svtzt2 ÿö~÷Ïõ·üº|1s~YPRu²2]ïN{ß´wt2 ÷ō²xv×}´yzs PdM|ßÍ{¹{ײ¿ÿwº1÷¶´úü´QA|PR²û{»¸v{z s2 mÛ÷ý»¹~Y¿{øó÷ð¶ó~o}~Û|ß üøð²ó÷xøjí~/Æzo}~Û|÷wt2
}\1}÷||¯Vw?²×{wv1øó÷ð¶ów~íy»~|/Ï2
kickflow|ogy÷ýð¿ø}~ 1÷ýð¿ø{ßz¸ó¸û²~/ußg¸º]y» ¸ó¸û²//~owg|/}UNy»± °w½/u|[tx1³ÿõû±ü·÷ó³¹ø|ßxvõ wtâÛ´÷ý»¹x~û¯|w{z» AI²tszy]uþÿw~~'Ûo|gùë zt/õw1õ÷ýð¿ø~qNr²/oqNr» AI{¸º¹¿ùó÷ÿóûù|wRö{}[{zs~w1 0³1õ·üº~PDCA²vwÞ{» kickflow~Îß{tßputÿÿÿ
gß{û_wy AI²õûowSaaS~{ w|r»o1 |r/ÿ{Ý}~{³{ÿ ¹ýóµüöü¹wAI~rÿ{²¿Vq»<{}AI¿´º=² üwvt~y2~py_kë |tzt~w1|rsfw{g vput2 Îo~»ó·÷ó{·y»î_´ó²zßqwvzº~yÿ