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
【Amplify Japan UG x Startup】Amplify チームによる プロダクト開発
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
cohe aoki
October 08, 2021
Technology
710
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【Amplify Japan UG x Startup】Amplify チームによる プロダクト開発
cohe aoki
October 08, 2021
More Decks by cohe aoki
See All by cohe aoki
BMG が生成したピッチ資料のデモ
coa00
0
600
Amplify Boostup #2 Multi project using monorepo
coa00
0
78
LLMを使ったチームのプロダクト開発の生産性を向上させる取り組み
coa00
0
48
Amplify Boostup #2 monorepo 運用による複数プロジェクト開発
coa00
0
760
サーバレス技術を活用したエンジョイ スピード開発
coa00
1
400
Expo と Amplifyを使って Webとアプリを同時開発
coa00
0
1.5k
Expo & Amplifyを使ってWebとアプリを同時開発した話
coa00
2
1k
Other Decks in Technology
See All in Technology
Local CI × GitHub Actions
gogutan
2
150
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
Claude Code本は、どのように執筆チームで書かれたか
oikon48
1
370
UniFi(ユニファイ)AIカメラの現場活用
ludicmind
1
430
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
160
Refining Active Record
shugo
0
150
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
560
Browser Spec: Testing Hotwire with Ruby
takahashim
1
120
Persisting Massive Data with Rails ~Designing for 60 billion rows, and fighting the bottlenecks~ Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
0
710
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
0
310
AIカンパニーへの転換を支えた、エンジニアの仕事の再定義
kworkdev
PRO
2
1.1k
味覇で作るパスタが美味い - 20261001_yabaubuki.dev
livesense
PRO
0
130
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
529
40k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
330
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
310
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
480
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
330
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
990
Building an army of robots
kneath
307
47k
Between Models and Reality
mayunak
4
500
Skip the Path - Find Your Career Trail
mkilby
1
260
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.7k
Transcript
Amplify νʔϜʹΑΔ ϓϩμΫτ։ൃ 1
גࣜձࣾO: CTO 2 ੨ޫฏ Purepom Media Lab 69σΟϨΫγϣϯ ϑϩϯτΤϯυϓϩάϥϚʔ
$P5&".ͷհ
ٕज़తͳΰʔϧɾϞνϕʔγϣϯ ϦΞϧλΠϜମݧʹΑͬͯ)3πʔϧʹ৽͍͠ମݧΛੜΈग़͍ͨ͠ w "QQ4ZODͷಛͰ͋Δ૬ޓੑͷ͋ΔϦΞϧλΠϜͳಉظମݧΛఏڙ w Կ͔Λߋ৽͢ΔͱଞͷਓͷϏϡʔ͕ߋ৽͞ΕΔɺTMBDLɺϝʔϧʹଈ࠲ʹ௨
8FC͔Βߋ৽ 4MBDL"QQ͔Β ߋ৽ MBNCEB 8FC 4MBDL"QQ 4MBDL"QQ 4MBDL"QQ 4MBDL"QQ 8FC
8FC 8FC .BJM .BJM .BJM ͦͷଞͰ։͍͍ͯΔਓʹͦͷ··ө 4MBDLʹ௨ ϝʔϧૹ৴ Կ͔͠Βߋ৽ ϦΞϧλΠϜମݧʹΑͬͯ)3πʔϧʹ৽͍͠ମݧΛੜΈग़͍ͨ͠ ٕज़తͳΰʔϧɾϞνϕʔγϣϯ
%FNP
ϓϩμΫτʹڵຯ͋Δํͪ͜Β·Ͱ IUUQTDPUFBNKQ
MVP͔ΒνʔϜ։ൃʹ 8
ελʔτΞοϓͷ.71։ൃ ϓϩμΫτͷ֦େʹै͍গਓ͔ΒνʔϜ։ൃʹਐԽ ͬ͘͞ͱ "NQMJGZͰͭ͘Γ ·͢ʂ ϑϩϯτ όοΫΤϯυ Πϯϑϥ ϑϩϯτ
όοΫΤϯυ Πϯϑϥ "NQMJGZͳͲͷϚʔδυγεςϜਓ։ൃʹͱͯΉ͍͍ͯ·͢ɻ ͍ͨͩͭ·ͰਓͰ։ൃ͠ଓ͚Δͷݫ͍͠ɻνʔϜͰͷ։ൃΛߟ͑·͠ΐ͏ɻ
MVP͔ΒνʔϜ։ൃʹ 10
"NQMJGZͷϚϧνڥ "NQMJGZFOWDIFDLPVUΛͬͯϚϧνڥ w %FW 5FTU 1SPEʹͦΕͧΕڥΛͭ͘Δ͜ͱ͕Ͱ͖Δ w νʔϜ։ൃʹ͓͍ͯ"1*Λ͞ΘΔ߹ɺ͜ΕͱผʹͦΕͧΕͷ։ൃڥ͕ඞཁ w %ZOBNP%#ͷςʔϒϧɺ*".ͷݖݶɺ$MPVE'PSNBUJPOͷελοΫʹ্ݶ͕͋
Γɺͨ͘͞Μͭ͘Δʹ্ݶͷ؇͕ඞཁɻ w ແ੍ݶʹͭ͘ΕΔΘ͚Ͱͳ͍ w 4FBSDIBCMFΛ͏ͱڥͷ͚ͩɺ&$͕૿͑ͯ͠·͏ɻ
"NQMJGZͷϚϧνڥ "NQMJGZFOWDIFDLPVUΛͬͯϚϧνڥ IUUQTEPDTBNQMJGZBXTDMJUFBNTPWFSWJFX
"NQMJGZ.PDL ϩʔΧϧϞοΫΛ׆༻ͨ͠νʔϜ։ൃ w TDIFNFͷมߋΛτϥΠΞϯυΤϥʔΛ͢Δ͜ͱ͕Ͱ͖Δɻ w (SBQI2-ͷϏϧυՄೳ w MBNCEBಈ࡞ɻͨͩ͠3FTU"1*ಈ࡞͠ͳ͍ w 3FTU"1*Ͱͳ͘SFTPMWFSΛ͏
w %ZOBNP%#ͷଓઌɺFOWϑΝΠϧͰઃఆʢະݕূʣ
1SFWJFXػೳ 1VMM3FRVFTUΛτϦΨʔʹࣗಈσΟϓϩΠͯ͘͠ΕΔ w Ϛʔδରͷϒϥϯν͝ͱʹ1SFWJFXΛઃఆ͢Δ͜ͱ͕Մೳ w ϗεςΟϯά͞ΕΔͷͰ࣮ࡍʹΞΫηεͯ͠ಈ࡞֬ೝ͕Ͱ͖Δ w ϏϧυνΣοΫɺςετίʔυΛ͠ΒͤΔ͜ͱ͕Ͱ͖Δɻ w όοΫΤϯυطଘͷͷͷબ͘͠৽ن࡞Ͱ͖Δ
w ্ड़ͷ௨Γڥͷ࡞͗͢͠Δͱ্ݶʹͻ͔͔ͬΔͷͰઐ༻ͷڥΛ࡞ͯ͠ࢦఆ͢Δ ͷ͕͓͢͢ΊͰ͢ w طଘͷڥΛࢦఆ͢Δ߹ɺόοΫΤϯυͷมߋ͕ಉ࣌ʹΔͱ্ॻ͖͕ߦΘΕΔɻͦ ͏͍ͬͨ߹ϓϨϏϡʔ༻ͷϒϥϯνΛ࡞͠ɺผͷڥΛࢦఆ͢Δ͜ͱͰճආ
։ൃ͔ΒϦϦʔε·ͰCZνʔϜ .PDL"1*Ͱ։ൃ 1VMM3FRVFTU 1SFWJFX%FQMPZ %FW5FTU 4UBHJOH %FQMPZ .PDL"1*Ͱ։ൃ 1VMM3FRVFTU 1SFWJFX%FQMPZ
.PDL"1*Ͱ։ൃ 1VMM3FRVFTU 1SFWJFX%FQMPZ 1SPE %FQMPZ ։ൃ ϦϦʔε
ن͕େ͖͘ͳΔͱඞཁʹͳΔ͜ͱ 16
ΫΥʔλʔͷҾ্͖͛ $MPVE'PSNBUJPO %ZOBNP%#ͷςʔϒϧͷ੍ݶ؇͕ඞཁʹͳΓ·͢ɻ
TypeScript 18
5ZQFTDSJQUͷܕڧ͍ຯํ "QQ4ZODͷΓΛ੍ޚ͠·͠ΐ͏ w BNQMJGZDPEFHFOͰ"1*Λੜ͢Δͱ5ZQFTΛͯ͢ੜͯ͘͠Ε·͢ɻ w ܕΛඞ͚͓ͣͭͯ͘ͱࢀরΤϥʔΛେ෯ʹ͙͜ͱ͕Ͱ͖Δɻ w ඞਢͰͳ͍ͷʹcOVMMͰఆٛ͞Ε͍ͯΔͨΊɺ74$PEFͷܯࠂʹ͠ ͕͍ͨͬͯ͘ͱࣗવͱΤϥʔॲཧΛॻ͘͜ͱ͕Ͱ͖Δɻ w
"QQ4ZODͷΓσʔλͷঢ়ଶʹΑͬͯܕ͕มΘΔͷͰɺܕࢀর͠ͳ͕ Β࡞Δͱ҆ఆ͢Δɻʢ74$PEF͕Πέϝϯ͗͢Δʣ w ܕ3FBDUͷ1SPQTʹࢦఆՄೳɻϑϩϯτͷ্࣭ʹͭͳ͕Δɻ
5ZQFTDSJQUͷܕͷ͚ํ"1* IUUQT[FOOEFWZOBLBNVSBBSUJDMFTCGCFDD
5ZQFTDSJQUͷܕͷར༻ϑϩϯτฤ 6TFSͱ͍͏5ZQFΛ࡞͢Δͱ6TFSͷܕ͕ੜ͞ΕΔɻ
ςετ 22
"QQ4ZODͷςετίʔυॏཁ ࣗಈੜ͞Εͨ"1*͕Μͩಈ͖Λ͢Δ͔Λ֬ೝ w "QQ4ZODͷ-JTUʹMJNJU͕σϑΥϧτɻ࠷େ·Ͱ૿͢͜ͱ͕ Ͱ͖Δ͕ɺσʔλ͕ଟ͍ͱΤϥʔʹͳΔɻಈ͔ͯ͠Έͳ͍ͱΘ͔Βͳ͍ɻ w !DPOOFDUJPONBOZUPNBZͰଓͯ͠Δͱ͖ʹɺϦϨʔγϣφϧςʔϒϧ ΑΓઌʹ݁߹͞Ε͍ͯΔϞσϧΛআ͢ΔͱΤϥʔʹͳΓ·͢ɻ w !LFZͰࢦఆͨ࣌͠ʹιʔτॱɺϑΟϧλϦϯά͕ਖ਼͘͠ػೳ͍ͯ͠Δ͔Α
͘ςετ͢Δඞཁ͕͋Δɻ w ݅ͷͱ͖ɺ݅ͷ࣌ਖ਼͘͠ಈ࡞͢Δ͔ɻ
+FTUͳͲͰ(SBQI2-Λςετ͢Δʹʁ w "NQMJGZͷ"1*Ͱͳ͘ɺ"QQ4ZOD$MJFOUΛ͏ඞཁ͕͋Δɻ w $PHOJUP *". ,FZશͯͷύλʔϯ͕ςετ͕Մೳ w "QQ4ZODϒϥβͰར༻Մೳ w
.PDLͰಈ࡞Մೳ w 4VCTDSJCFಈ࡞Մೳ IUUQTEPDTBXTBNB[PODPNKB@KQBQQTZODMBUFTUEFWHVJEFCVJMEJOHBDMJFOUBQQOPEFIUNM
ίʔυͷڞ௨Խ 25
όοΫΤϯυ։ൃ MBNCEBͷίʔυڞ௨Խ w MBNCEBͦΕͧΕ͕ಠཱ͍ͯ͠ΔͨΊɺίʔυͷڞ௨Խ͕՝ w MBNCEB࣮ߦ͞ΕΔʹίϯςφ͕ىಈ͢ΔͨΊɺύϑΥʔϚϯεΛ͔Μ͕͑ ΔͱͰ͖Δ͚ͩMBNCEBͰ࣮͢Δ΄͏͕ޮԽΑ͍ɻ w MBNCEB$POUBJOFSΛͬͨڞ௨Խ w
%FQMPZ͕͚ͬ͜͏େมɻτϥϒϧ͕ଟ͍ʢॴײʣ w 8FCQBDLʴ5ZQFTDSJQʹΑΔϏϧυڥͷߏங w ίʔυͷڞ௨Խɺܕͷ҆શΛಉ࣌ʹಘΒΕΔͷͰ͓͢͢Ί
ύϑΥʔϚϯεͷ 27
"QQ4ZODߴ͕ͩϓϩηε͕૿͑Δͱॏ͍ ن͕େ͖͘ͳΔͱແବͳΞΫηεΛ͠ͳ͍Α͏ʹίϯτϩʔϧ͢Δඞཁ͕Δ w 4VCTDSJCF͕Ͱ͖Δಉ࣌ʹ w ಉҰεΩʔϚʹෳճTVCTDSJCFͰ͖ͳ͍ w !DPOOFDUJPOΛଟ༻͢ΔͱϦετ͕ॏ͘ͳΔɻಉ࣌ʹϦετΛ࣮ߦ͢Δͱॏ ͘ͳΔɻ w
JEͰཧ͢Δ߹ɺͨ͘͞Μͷ(FU͕ൃੜ͢ΔͷͰҙ
ࣗಈੜͷΫΤϦదʹݮΒ͢ ੜ͞ΕͨΫΤϦΛΦʔόϥΠυͯ͠ݮΒͯ͠ॻ͘ɻ
ࣗ༝ʹΞΫηε͢ΔͷͰͳ͘ίϯτϩʔϧͰ͖ΔΑ͏ʹ͢Δ w Ϗϡʔʹ֤ϝϯόʔࣗ༝ʹ͔͘ͱසൟʹΫΤϦ͕ͬͯ͠·͏ةݥੑ͕͋ Δɻ w Ͳ͔͜ͰऔಘΛ͓͜ͳ͍ɺΩϟογϡͯ͠͏Ξϓϩʔν͕தن։ൃͩͱ ͏·͘ϫʔΫ͢Δɻ w 3FEVYͳͲΛ͏·͘׆༻͢Δ
খن͔ΒதنͷมԽͷରԠ BQQTZOD DPHOJUP EZBOBNP%# 7JFX BQJ 7JFX BQJ 7JFX 7JFX
SFEVY VTFST HPBMT PO .FNCFS 'FFECBDL 7JFX BQJ খن։ൃ த༗ن։ൃ BDUJPO TFMFDUPS BQQTZOD DPHOJUP EZBOBNP%#
όοΫΞοϓͱσʔλอޢ 32
%ZOBNP%#ͷόοΫΞοϓ w ϙΠϯτΠϯλΠϜϦΧόϦ w ΩʔϚʔ͝ͱʹཤྺΛͨͤɺ͍ͭͰ͖ͳώ ετϦʔʹͲ͢͜ͱ͕Ͱ͖Δɻ w ΦϯσϚϯυόοΫΞοϓ w ςʔϒϧ·Δ͝ͱอଘ
w ఆظόοΫΞοϓՄೳ "NQMJGZʹόοΫΞοϓͷΈ͕ͳ͍
%ZOBNP%#ͷϦΧόϦ w όοΫΞοϓ͔ΒςʔϒϧΛ࡞͢Δ͜ͱ͕Ͱ͖Δɻͨͩ͠ɺ"3/͕มΘͬ ͯ͠·͏ͨΊɺͦͷ··ར༻͢Δ͜ͱ͕Ͱ͖ͳ͍ɻ w όοΫΞοϓ͔Βͷ෮چՄೳ͕ͩσʔλҠߦʹεΫϦϓτ͕ඞཁ w %ZOBNP%#ʹΞΫηεͯ͠σʔλΛҠߦ͢Δඞཁ͕͋Δɻ w ͬͱ͍͍Γ͔ͨ͋ΔΑͬͯਓڭ͍͑ͯͩ͘͞🥺
࠷ޙʹʂʂ 35
0ͰҰॹʹಇ͍ͯ͘ΕΔϝϯόʔืू͍ͯ͠·͢ʂ w ืू͍ͯ͠Δਓ w ࠷ઌ"84ͷ͞ΘΓ͍͔ͨͨʂ w "NQMJGZΛ͞ΘΓ͍͔ͨͨʂ w ϑϩϯυΤϯυͷ͞ΘΓ͍͔ͨͨʂ w
ϑϩϯτΤϯυόοΫΤϯυͱʹืू͍ͯ͠·͢ʂ
0ͰҰॹʹಇ͍ͯ͘ΕΔϝϯόʔืू͍ͯ͠·͢ʂ w ใڞ༗͕׆ൃ w τϥϒϧγϡʔςΟϯάΛੵۃతʹڞ ༗ w ΦϯϘʔσΟϯάɺ͑Α͏ʹͳΔͨΊ ͷษڧํ๏ͷڞ༗ͷ׆ൃ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ https://coteam.jp 38