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
【Amplify Japan UG x Startup】Amplify チームによる プロダクト開発
Search
cohe aoki
October 08, 2021
Technology
0
620
【Amplify Japan UG x Startup】Amplify チームによる プロダクト開発
cohe aoki
October 08, 2021
Tweet
Share
More Decks by cohe aoki
See All by cohe aoki
Amplify Boostup #2 Multi project using monorepo
coa00
0
43
LLMを使ったチームのプロダクト開発の生産性を向上させる取り組み
coa00
0
30
Amplify Boostup #2 monorepo 運用による複数プロジェクト開発
coa00
0
590
サーバレス技術を活用したエンジョイ スピード開発
coa00
1
320
Expo と Amplifyを使って Webとアプリを同時開発
coa00
0
1.4k
Expo & Amplifyを使ってWebとアプリを同時開発した話
coa00
2
930
Other Decks in Technology
See All in Technology
DevinでAI AWSエンジニア製造計画 序章 〜CDKを添えて〜/devin-load-to-aws-engineer
tomoki10
0
280
OSSの実装を参考にBedrockエージェントを作る
moritalous
2
400
Global Databaseで実現するマルチリージョン自動切替とBlue/Greenデプロイ
j2yano
0
220
どうすると生き残れないのか/how-not-to-survive
hanhan1978
13
10k
きのこカンファレンス_ランチスポンサーセッション
kabaya
1
380
How to benefit from the latest Keycloak features
ahus1
0
110
リクルートのエンジニア組織を下支えする 新卒の育成の仕組み
recruitengineers
PRO
2
220
目標と時間軸 〜ベイビーステップでケイパビリティを高めよう〜
kakehashi
PRO
8
1.1k
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
520
【Oracle Cloud ウェビナー】【入門&再入門】はじめてのOracle Cloud Infrastructure [+最新情報]
oracle4engineer
PRO
1
120
Qiita Organizationを導入したら、アウトプッターが爆増して会社がちょっと有名になった件
minorun365
PRO
1
400
アジリティを高めるテストマネジメント #QiitaQualityForward
makky_tyuyan
1
670
Featured
See All Featured
It's Worth the Effort
3n
184
28k
Done Done
chrislema
182
16k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
A Philosophy of Restraint
colly
203
16k
Agile that works and the tools we love
rasmusluckow
328
21k
GraphQLとの向き合い方2022年版
quramy
44
14k
Embracing the Ebb and Flow
colly
84
4.6k
What's in a price? How to price your products and services
michaelherold
244
12k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
We Have a Design System, Now What?
morganepeng
51
7.4k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Building an army of robots
kneath
303
45k
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