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
Hidetaka Okamoto
September 27, 2019
Technology
1
270
選択と集中 - 少人数で効率的にアプリケーション・サービスを開発運用するために考えたいこと / developer summit kansai 2019
Developer summit kansai 2019 A-3
Hidetaka Okamoto
September 27, 2019
Tweet
Share
More Decks by Hidetaka Okamoto
See All by Hidetaka Okamoto
OpenAI APIで API Changelogを要約してみた話 / chatgpt-osaka-1
hideokamoto
0
590
コミュニティ運営から 中の人に変わって感じたこと
hideokamoto
0
84
Developerが Developer Advocateになった話 / dev-rel-meetup-tokyo-71
hideokamoto
0
330
Jamstack開発者のための App Runner入門
hideokamoto
1
480
WordPressでの webサイト制作2022 / ngk2022s
hideokamoto
0
440
JavaScript(TypeScript)で メディアサイトを インフラから構築する方法 / jsconf-jp-2021
hideokamoto
2
4.2k
AWS上でStripeを利用したアプリをより安全にデプロイする方法 /jaws-pankration-2021
hideokamoto
1
200
Shifter Headlessと Headless WordPressの紹介
hideokamoto
0
1.8k
Stripe & Next.js + AWS Amplify で会員 + 定期課金機能 / JP_Stripes20210903
hideokamoto
7
3.2k
Other Decks in Technology
See All in Technology
Nx × AI によるモノレポ活用 〜コードジェネレーター編〜
puku0x
0
430
【OptimizationNight】数理最適化のラストワンマイルとしてのUIUX
brainpadpr
1
420
2025新卒研修・HTML/CSS #弁護士ドットコム
bengo4com
3
13k
形式手法特論:位相空間としての並行プログラミング #kernelvm / Kernel VM Study Tokyo 18th
ytaka23
3
1.1k
Amazon Qで2Dゲームを作成してみた
siromi
0
120
마라톤 끝의 단거리 스퍼트: 2025년의 AI
inureyes
PRO
1
710
風が吹けばWHOISが使えなくなる~なぜWHOIS・RDAPはサーバー証明書のメール認証に使えなくなったのか~
orangemorishita
15
5.6k
Rubyの国のPerlMonger
anatofuz
3
730
マルチプロダクト×マルチテナントを支えるモジュラモノリスを中心としたアソビューのアーキテクチャ
disc99
1
390
Amazon S3 Vectorsは大規模ベクトル検索を低コスト化するサーバーレスなベクトルデータベースだ #jawsugsaga / S3 Vectors As A Serverless Vector Database
quiver
0
130
【CEDEC2025】ブランド力アップのためのコンテンツマーケティング~ゲーム会社における情報資産の活かし方~
cygames
PRO
0
250
AIエージェントを現場で使う / 2025.08.07 著者陣に聞く!現場で活用するためのAIエージェント実践入門(Findyランチセッション)
smiyawaki0820
6
870
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Designing for humans not robots
tammielis
253
25k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
How GitHub (no longer) Works
holman
314
140k
The Cult of Friendly URLs
andyhume
79
6.5k
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