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
選択と集中 - 少人数で効率的にアプリケーション・サービスを開発運用するために考えたいこと /...
Search
Hidetaka Okamoto
September 27, 2019
Technology
330
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
選択と集中 - 少人数で効率的にアプリケーション・サービスを開発運用するために考えたいこと / developer summit kansai 2019
Developer summit kansai 2019 A-3
Hidetaka Okamoto
September 27, 2019
More Decks by Hidetaka Okamoto
See All by Hidetaka Okamoto
OpenAI APIで API Changelogを要約してみた話 / chatgpt-osaka-1
hideokamoto
0
740
コミュニティ運営から 中の人に変わって感じたこと
hideokamoto
0
160
Developerが Developer Advocateになった話 / dev-rel-meetup-tokyo-71
hideokamoto
0
410
Jamstack開発者のための App Runner入門
hideokamoto
1
570
WordPressでの webサイト制作2022 / ngk2022s
hideokamoto
0
510
JavaScript(TypeScript)で メディアサイトを インフラから構築する方法 / jsconf-jp-2021
hideokamoto
2
4.5k
AWS上でStripeを利用したアプリをより安全にデプロイする方法 /jaws-pankration-2021
hideokamoto
1
260
Shifter Headlessと Headless WordPressの紹介
hideokamoto
0
2.3k
Stripe & Next.js + AWS Amplify で会員 + 定期課金機能 / JP_Stripes20210903
hideokamoto
7
3.3k
Other Decks in Technology
See All in Technology
Flutter Webを「SDK」として配る — 50以上のゲームを支える埋め込みアーキテクチャ
masayukisuda
0
180
AI時代に求められる優秀なTechLeadの振る舞い
pospome
4
5.5k
cdkd (CDK Direct)
gotok365
3
200
レガシーコードに対する loop engineering的なAI開発プロセス導入について
kubell_hr
0
190
AIで選択肢が広がった組織設計の理想と現実
konifar
16
7.7k
Deep Data Security 機能解説
oracle4engineer
PRO
3
1k
複雑な業務システムを高速でつくるため、チーム全員をつくれる人へ
ayakurabuchi
0
130
Building Audio Plugin Ecosystem for Android in 2026
atsushieno
2
140
IBC 2026 動画技術関連レポート / IBC 2026 Report
cyberagentdevelopers
PRO
2
210
Maestro MCPとClaude Code Skillsによる自律的なE2Eテスト支援
asmz
0
410
AIに任せられるFlutterコードベースを作る 〜仕様をコードで表し、ハーネスで守る〜
myohei
1
630
増え続けるプロダクトの品質をどう担保するか。ProductSpecとTypeScriptによる取り組み
joere
3
380
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
560
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
The Curious Case for Waylosing
cassininazir
1
610
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3.1k
The Language of Interfaces
destraynor
162
27k
Ruling the World: When Life Gets Gamed
codingconduct
0
430
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.2k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
380
Designing for Performance
lara
612
70k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
121
120k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1.1k
Transcript
બ ͱ ू த গ ਓ Ͱ ޮ
త ʹ Ξ ϓ Ϧ έ ʔ γ ϣ ϯ ɾ α ʔ Ϗ ε Λ ։ ൃ ӡ ༻ ͢ Δ ͨ Ί ʹ ߟ ͑ ͨ ͍ ͜ ͱ D e v e l o p e r s S u m m i t K a n s a i 2 0 1 9
H i d e t a k a O k
a m o t o • Digitalcube Co. Ltd. • Alexa Campions • AWS Samurai 2017 in Japan • ask sdk(Node.js) Core contributor
None
- 15ਓͷνʔϜ - 100%ϦϞʔτϫʔΫ - 3ͭͷλΠϜκʔϯ ʢຊɺΦϥϯμ ɺϑΟϥσϧϑΟΞʣ -
ຊޠͱӳޠ͕ࠞࡏ͢Δίϛϡχ έʔγϣϯ Small Team
ޮ త ͳ ։ ൃ Λ ਐ Ί Δ
্ Ͱ · ͣ ҙ ࣝ ͠ ͨ ͍ ͜ ͱ
Β ͳ ͍ ͜ ͱ Λ ܾ Ί Δ
͜ ͱ
A g e n d a • Step1: SaaSΛͬͯɺʮΒͳ͍͜ͱʯΛ૿͢ •
ࣗࣾͰ։ൃ͖͢ͱSaaSΛར༻͢Δͷҧ͍ͳʹ͔ʁ • Step2: ࣾͷ։ൃΛSaaSϥΠΫʹͭ͘Δ • APIυϦϒϯͳϚΠΫϩαʔϏεΛߏங͢Δ • Conclusion: ԕ͘ʹߦ͔͘ɺૣ͘ߦ͔͘
A g e n d a • Step1: SaaSΛͬͯɺʮΒͳ͍͜ͱʯΛ૿͢ •
ࣗࣾͰ։ൃ͖͢ͱSaaSΛར༻͢Δͷҧ͍ͳʹ͔ʁ • Step2: ࣾͷ։ൃΛSaaSϥΠΫʹͭ͘Δ • APIυϦϒϯͳϚΠΫϩαʔϏεΛߏங͢Δ • Conclusion: ԕ͘ʹߦ͔͘ɺૣ͘ߦ͔͘
S a a S Λ ͬͯɺ ʮ Β
ͳ ͍ ͜ ͱ ʯ Λ ૿ ͢ • ࣗͰΔ͖͔ɺΔ·͍͔ • Ϗδωεͷதͱඞཁͳͷͷҧ͍ • ShifterͰબΜͩͷɾબͳ͔ͬͨͷ • Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
Making Your Own Power Doesn't Make Your Beer Taste Better
ࣗͷྗͰΔ = ࠷্ͱݶΒͳ͍ ੲ: ϏʔϧࣗલͰൃిػΛॴ༗ ࠓ: ిؾൃిॴ͔Βങ͏ͷ -> ిؾͷॴ༗͔Βར༻ͷมԽ
ʮ ͋ Δ ػ ೳ ʯ ͷ ॴ ༗ ͱ
ར ༻ • ઃඋΛ༻ҙ͢Δ͜ͱͰɺࣗڅ͕ࣗՄೳʹͳΔ -> ॴ༗ • ΦϯϓϨαʔόʔ / ࣗࣾ։ൃ / ϑϧεΫϥον • ୈࡾऀ͕༻ҙͨ͠ͷΛೖख͢Δ -> ར༻ • Ϋϥυαʔόʔ / SaaS / ϑϨʔϜϫʔΫ
ʮ ͋ Δ ػ ೳ ʯ ͷ ॴ ༗ ͱ
ར ༻ : ϝ Ϧ ο τ ͱ σϝ Ϧ ο τ • ॴ༗ɿ҆৺ײॊೈͳΧελϚΠζੑͷ֬อͳͲ͕ظͰ͖Δ • ॴ༗ɿ४උʹ࣌ؒͱίετ͕͔͔Δ / ϝϯςφϯεͷඞཁੑ • ར༻ɿඞཁͳ࣌ʹඞཁͳ͚ͩखʹೖΕΔ͜ͱ͕Ͱ͖Δ • ར༻ɿαʔϏεଆͷ༷ͷґଘ / োͷυϛϊ͠
ࣗ Ͱ ༻ ҙ ͢ Δ ͔ ɺ Կ
͔ Λ ར ༻ ͢ Δ ͔ • APIϕʔεͷαʔϏεͷ૿ՃɿStripe / Auth0 / AWS / etc… • ෳͷAPIΛΈ߹ΘͤͰɺϏδωεϩδοΫͷߏங͕Մೳʹ • ඞཁͳ෦Λ֎ͭͭ͠ɺࣗͷΛΈཱͯΔ • ʮΈཱ͍ͯͨͷʯͷͨΊʹ͑Δͷͳʹ͔ʁ
S a a S Λ ͬͯɺ ʮ Β
ͳ ͍ ͜ ͱ ʯ Λ ૿ ͢ • ࣗͰΔ͖͔ɺΔ·͍͔ • Ϗδωεͷதͱඞཁͳͷͷҧ͍ • ShifterͰબΜͩͷɾબͳ͔ͬͨͷ • Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
ॴ ༗ ͢ ͖ ػ ೳ ͱ ඞ ཁ ͳ
ػ ೳ • ͦͷϏδωεͷجװ -> ࣗલͰ༻ҙ͢Δඞཁ͕͋Δ • αʔϏεԽ͢ΔͨΊʹඞཁͳػೳ -> ར༻Λݕ౼͢Δ • ΞΧϯτཧ / ܾࡁ / αʔόʔ / GUI / etc… • ʮͳ͍ͱࠔΔ͕ɺͲͷϏδωεͰඞཁͳͷʯ
Ͳ ͜ · Ͱ Λ ॴ ༗ ͱ ͢ Δ
͔ ʁ • ίΞͱͳΔγεςϜࣗͰ࡞Δ͔͠ͳ͍ • γεςϜΛߏ͢ΔͷɺSaaSΛར༻Ͱ͖Δ • ೝূ / ೝՄ / ܾࡁͳͲɺʮඞਢ͚ͩͲίΞ͡Όͳ͍ʯΛݟۃΊΔ • ίΞ෦ͷ։ൃʹूத͢ΔͨΊʹɺSaaSΛར༻͢Δ
S a a S Λ ͬͯɺ ʮ Β
ͳ ͍ ͜ ͱ ʯ Λ ૿ ͢ • ࣗͰΔ͖͔ɺΔ·͍͔ • Ϗδωεͷதͱඞཁͳͷͷҧ͍ • ShifterͰબΜͩͷɾબͳ͔ͬͨͷ • Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
• Stripe ϞχλϦϯάɾUI։ൃɾαϙʔτσεΫɾCRM … (શͯSaaS)
• Ϛελొ • ଟ௨՟ܾࡁ • ٻཧ • ෆ৹ٻνΣοΫ • CRMͱͷ࿈ܞ
՝ۚɾٻཧStripe
• PRͷࣄલςετ • ΞϓϦͷϏϧυ • σϓϩΠ σϓϩΠɾϫʔΫϑϩʔCircle CI
S a a S Λ ͬͯ Α ͔ ͬ
ͨ ͜ ͱ • ։ൃ͕ͱʹ͔͘ૣ͍ • ʮ͜ͷػೳཉ͍͠ʯ -> ʮAPI͋ΔͶʯ -> ʮ͡Ό͋ͦΕΑͿΘʯ • SaaSଆͷϞσϧΛϕʔεʹγεςϜͷઃܭ͕Ͱ͖Δ • ϩά / Ϣʔβʔཧ / ϚωίϯͳͲͷʮ͋Δͱخ͍͠ʯػೳ͕͋Δ • ࣗલͰ࡞Δͱ͍͍ͩͨޙճ͠ʹ͞Ε͕ͪͳͷ͕͍͍ͩͨ͋Δ • GDPR / PCI DSSͳͲͷΊΜͲ͍͘͞ ॏཁͳػೳ͍͍ͩͨαϙʔτ
S a a S Λ ͬͯ ͭ Β ͍
͜ ͱ • SaaSͷ੍༷͕ͦͷ··ϓϩμΫτͷ੍ݶʹͳΔ • ্ݶ੍ݶͷ֬ೝ࿙ΕͰେͳ༷࠶ઃܭ͕͓͖Δ͜ͱ • ্ݶ੍ݶඞͣ֬ೝ͔ͯ͠Βಈ͘ɻಈ࡞ࢼ͓ͯ͘͠ • োͷϐλΰϥεΠον • 1 SaaSͷোͷר͖ఴ͑Ͱશମ͕མͪΔՄೳੑ͕͋Δ • API͕ΤϥʔΛฦͨ࣌͠ͷᷖճ࿏͋Δ͔ʁ͚ͦͩ͜ࡴͤΔ͔ʁ
• πΫϧ͔Βɺ͏·͘πΧ ϑϥοτԽ͢Δੈքͱ σδλϧτϥϯεϑΥʔϝʔγϣϯ • Agility ͕ڧ͞ΛੜΉ࣌ ʮେ͖͍ͷ͕খ͍͞ͷʹউͭʯͷͰͳ͘ ʮ͍ͷ͕͍ͷʹউͭʯ
S a a S Ͱ ࢼ ͠ ɺ μϝ ͳ
Β͢ ͙ ࣺ ͯ Δ • ࢼݧӡ༻͢ΔػೳΛҰ͔Β࡞ΔͷϦεΫ͕େ͖͍ • ैྔ՝ۚܥSaaSࣙΊ͘͢ɺτϥΠΞϧ͕͋Δ͜ͱଟ͍ • ʮ·ͣSaaSͰࢼ͢ʯ -> ʮΓͳ͍͔Β࡞Δʯͱ͍͏அ • SaaSΛ׆͔͢͜ͱͰɺΞδϦςΟΛߴΊΔ
S a a S Λ ͬͯɺ ʮ Β
ͳ ͍ ͜ ͱ ʯ Λ ૿ ͢ • ࣗͰΔ͖͔ɺΔ·͍͔ • Ϗδωεͷதͱඞཁͳͷͷҧ͍ • ShifterͰબΜͩͷɾબͳ͔ͬͨͷ • Βͳ͍͜ͱͰɺݟ͑Δ͜ͱ
Ϣ ʔ β ʔ ʮ ମ ݧ ʯ ʹ
͓ ۚ Λ ͏ • ΧλϩάεϖοΫੑೳ͚ͩͰબͿέʔε͕ݮগ • ʮͦΕΛ͏͜ͱͰɺͲΜͳମݧ͕Ͱ͖Δ͔ʁʯ • ϢʔβʔͷٻΊΔମݧৗʹมԽ͢Δ • มԽ͢ΔظʹԠ͑ΔͨΊʹɺSaaSԽͯ͠ܧଓతͳؔΛࢦ͢
“ͷͮ͘Γͷ߹ɺͲ͏ͯ͠ςΫϊϩδʔʹภΓ͕͋Δ͕ɺϢʔβʔ͔ Βͯ͠ΈΕΧλϩάʹৄࡉʹܝࡌ͞Ε͍ͯΔεϖοΫͳͲɺϋϯόʔΨʔ ͷԣͷϙςτ΄ͲͷՁແ͍ɻͦΜͳΤϯδχΞͷΤΰͷΑ͏ͳͷ ·ͣΕͯɺސ٬͕৺Α͍ͱࢥ͑ΔαʔϏεઃܭΛߦ͏͖ͩɻ” ςΫϊϩδʔͰͳ͘ސ٬ࢹͰαʔϏεΛߟ͑Δ
A g e n d a • Step1: SaaSΛͬͯɺʮΒͳ͍͜ͱʯΛ૿͢ •
ࣗࣾͰ։ൃ͖͢ͱSaaSΛར༻͢Δͷҧ͍ͳʹ͔ʁ • Step2: ࣾͷ։ൃΛSaaSϥΠΫʹͭ͘Δ • APIυϦϒϯͳϚΠΫϩαʔϏεΛߏங͢Δ • Conclusion: ԕ͘ʹߦ͔͘ɺૣ͘ߦ͔͘
a s a S e r v i c e
Խ ͭ͠ ͭ ͋ Δ ੈ ք https://boxil.jp/mag/a3600/
a s a S e r v i c e
Խ ͭ͠ ͭ ͋ Δ ੈ ք • Backend as a Service • Platform as a Service • Infrastructure as a Service • Software as a Service • etc…
D i g i t a l c u b
e ͷ a s a S e r v i c e Խ • AWS Marketplace AMI (AMIMOTO): Machine Imageͷఏڙ • AMIMOTO Managed: ϚωʔδυϗεςΟϯάʢSaaSԽʣ • Shifter: WordPressͷSaaSԽʢମݧʹϑΥʔΧεʣ
খ ͞ ͳ α ʔ Ϗ ε ͷ ू ·
Γ ʢ ܈ ʣ ͷ Α ͏ ʹ ͭ ͘Δ • υϝΠϯ / ػೳϨϕϧͰ̍ͭͷαʔϏεԽ • API ΠϕϯτϕʔεͰαʔϏεΛར༻͢Δ • microͳserviceΛΈ߹Θͤͨߏ -> microservices • খ͞ͳSaaS / FaaSΛ࡞ͬͯɺͦΕΛΈ߹ΘͤΔܗͷ࣮
• AWSΛશྗར༻ • APIΛΈ߹Θͤͨ ɹΞϓϦߏ جຊΞϓϦέʔγϣϯ (Serverless Architecture)
• React (SPA / GUI) • Serverless FW (API) •
Netlify (Server) • AWS (APP Server) User Interface
m i c ro s e r v i c
e s ͷ ϝ Ϧ ο τ • αʔϏε୯ҐͰͷσϓϩΠɾมߋ͕ՄೳʹͳΔ • ґଘؔΛݮΒ͢͜ͱͰɺςετ͘͢͠ͳΔ • ػೳνʔϜɺαʔϏεͷੑ࣭ʹٕ͋ͬͨज़͕ར༻Ͱ͖Δ • ΠϕϯτυϦϒϯʹ͢Δ͜ͱͰɺαʔϏεؒͷґଘݮΒͤΔ
m i c ro s e r v i c
e s ͷ σϝ Ϧ ο τ • ίʔυϕʔε / Ϧιʔεͷ͕େʹͳΔ • ґଘؔΛݮΒ͢͜ͱͰɺςετ͘͢͠ͳΔ • ػೳνʔϜɺαʔϏεͷੑ࣭ʹٕ͋ͬͨज़͕ར༻Ͱ͖Δ • ΠϕϯτυϦϒϯʹ͢Δ͜ͱͰɺαʔϏεؒͷґଘݮΒͤΔ
m i c ro s e r v i c
e s ͷ σϝ Ϧ ο τ • ίʔυϕʔε / Ϧιʔεͷ͕େʹͳΔ • ݁߹ςετͷෳࡶԽ • ػೳνʔϜɺαʔϏεͷੑ࣭ʹٕ͋ͬͨज़͕ར༻Ͱ͖Δ • ΠϕϯτυϦϒϯʹ͢Δ͜ͱͰɺαʔϏεؒͷґଘݮΒͤΔ
m i c ro s e r v i c
e s ͷ σϝ Ϧ ο τ • ίʔυϕʔε / Ϧιʔεͷ͕େʹͳΔ • ݁߹ςετͷෳࡶԽ • ʮͦͷਓ͔͠Θ͔Βͳ͍ΞϓϦʯͷੜ • ΠϕϯτυϦϒϯʹ͢Δ͜ͱͰɺαʔϏεؒͷґଘݮΒͤΔ
m i c ro s e r v i c
e s ͷ σϝ Ϧ ο τ • ίʔυϕʔε / Ϧιʔεͷ͕େʹͳΔ • ݁߹ςετͷෳࡶԽ • ʮͦͷਓ͔͠Θ͔Βͳ͍ΞϓϦʯͷੜ • ϐλΰϥεΠονతͳෆ۩߹ͷՄೳੑ
m i c ro s e r v i c
e s ۜ ͷ ؙ Ͱ ͳ ͍ • ࠓ·Ͱखؒͩͬͨ࡞ۀΛޮԽͰ͖Δ • microservicesͷͨΊͷ࡞ۀ͕৽͘ൃੜ͢Δ • ϞϊϦγοΫͷཧίετ vs microservicesͷཧίετ
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ܕϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
Ϧ ϯ τπ ʔ ϧ ʹ Α Δ ه ๏
ͷ ඪ ४ Խ • ESLintͰίʔσΟϯάελΠϧΛඪ४Խ • ϧʔϧJavaScript Standard StyleͰڞ௨Խ • git hookCIͰνΣοΫ͠ɺϧʔϧҧΛϦδΣΫτ͢Δ • ॻ͖ํͷΫηΛۉ͢͜ͱͰɺ୭ͰಡΊΔɾ৮ΕΔίʔυʹ͢Δ
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
ςε τ ܕ ʹ Α Δ ഁ յ త
ม ߋ ͷ ݕ ɾ ༧ • ࣮ऀ͕ʮ͜͏͑͜͏ಈ͘ʯͱ͍͏هΛ͢ • ؔ୯ҐͷϢχοτςετɾαʔϏε୯Ґͷ݁߹ςετ • ଞͷ࣮ऀ͕৮Δ࣌ɺͳʹΛյ͔ͨ͠ΛΘ͔Γ͘͢͢Δ • ςετέʔεΛݟΔ͜ͱͰɺ࣮ͷѲͰ͖Δ • ಉ༷ʹܕΛ͚ͭΔ͜ͱͰɺޡͬͨܕΛࢦఆͨ͜͠ͱʹؾ͚ͮΔ
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
࣮ ͢ Δ ͷ ͕ త ɺ फ
ڭ ઓ ૪ ͠ ͨ ͘ ͳ ͍ • ʮϧʔϧʹै͍ͬͯΔ͔൱͔ʯͷࡋఆػցతʹߦ͏ • GitHubͰmasterϒϥϯνΛอޢ • CIͷpassΛmergeͷ݅ʹ͢Δ • ʮCI͕μϝͬͯݴͬͯΔ͔Βํͳ͍ʯ • ػցతʹͰ͖ͳ͍ϨϏϡʔͷΈਓྗͰ͓͜ͳ͏
m i c ro s e r v i c
e s ͷ ཧ ί ε τ Λ ͍ ͔ ʹ ͑Δ ͔ • ୭Ͱಉ͡Α͏ʹ࣮ͤ͟ΔΛಘͳ͍ڥΛ࡞Δ • ϦϯτπʔϧʹΑΔه๏ͷඪ४Խ • ςετܕʹΑΔഁյతมߋͷݕɾ༧ • CIαʔϏεΛͬͨʮୈࡾऀʹΑΔࡋఆʯ • υΩϡϝϯτΛ͢
࣮ ͠ ͨ ਓ ͩ ͍ ͨ ͍
Կ Λ ॻ ͍ ͨ ͔ ֮ ͑ͯ ͍ ͳ ͍ • TSDocͳͲͰιʔεʹίϝϯτΛ͢ • APISwaggerͰϦΫΤετ / ϨεϙϯεΛ໌ࣔ • LambdaInvokeαϯϓϧΛ༻ҙ͢Δ • λεΫͷҙਤ࡞ۀΛBacklogGitHubͷIssue / PRʹ͢
A g e n d a • Step1: SaaSΛͬͯɺʮΒͳ͍͜ͱʯΛ૿͢ •
ࣗࣾͰ։ൃ͖͢ͱSaaSΛར༻͢Δͷҧ͍ͳʹ͔ʁ • Step2: ࣾͷ։ൃΛSaaSϥΠΫʹͭ͘Δ • APIυϦϒϯͳϚΠΫϩαʔϏεΛߏங͢Δ • Conclusion: ԕ͘ʹߦ͔͘ɺૣ͘ߦ͔͘
ϚΠΫ ϩ α ʔ Ϗ ε ͡ Ό ͳ ͍
ํ ͕ Α ͍ ͜ ͱ ͋ Δ • WordPress / DrupalͳͲͰૉૣ͘࡞Δͷ༗ޮͳखஈ • ϞϊϦγοΫ͔ͭख׳ΕͨߏͰૉૣ͘ϦϦʔε͢Δ • APIΤϯυϙΠϯτΛఏڙ͢Δ͜ͱͰɺas a ServiceԽՄೳ • ૉૣ͘࡞ͬͯϦϦʔε -> APIԽ -> ϚΠΫϩαʔϏεׂ
– Ξ ϑ Ϧ Χ ͷ ᷾ Α Γ “ૣ͘ߦ͘ͳΒ̍ਓͰ͍͚ɺ
ԕ͘ʹ͍͘ͳΒΈΜͳͰ͍͚”
ૣ ͘ ਐ Ή ͖ ͔ ɺ ԕ ͘
Λ ࢦ ͢ ͖ ͔ • ̌ -> 1ͷϞϊϦγοΫ͕ૣ͘ͳΓ͍͢ • CMS / FWͳͲͷڊਓͷݞʹΕΔ༏Ґੑ • API / ϚΠΫϩαʔϏεԽ͢Δ͜ͱͰɺʮ̍ͭͷ͜ͱΛ͏·͘Δʯ • ͋ͳͨͷߦ͖͍ͨॴͲ͏ͬͯਐΈ·͔͢ʁ • Far Together