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
社内でKaggle部を作って初学者育成した話
daikon99
1
140
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
190
Amazon Bedrock 2025 年の熱いアップデート (2025/3 時点)
icoxfog417
PRO
3
420
Охота на косуль у древних
ashapiro
0
150
【Snowflake九州ユーザー会#2】BigQueryとSnowflakeを比較してそれぞれの良し悪しを掴む / BigQuery vs Snowflake: Pros & Cons
civitaspo
5
1.6k
最近のSRE支援ニーズ考察 | sogaoh's LT @ Road to SRE NEXT@札幌
sogaoh
PRO
1
170
データモデルYANGの処理系を再発明した話
tjmtrhs
0
460
Amazon Athenaから利用時のGlueのIcebergテーブルのメンテナンスについて
nayuts
0
140
Introduction to OpenSearch Project - Search Engineering Tech Talk 2025 Winter
tkykenmt
2
270
2025/3/1 公共交通オープンデータデイ2025
morohoshi
0
120
User Story Mapping + Inclusive Team
kawaguti
PRO
3
610
書籍『入門 OpenTelemetry』 / Intro of OpenTelemetry book
ymotongpoo
8
590
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Rails Girls Zürich Keynote
gr2m
94
13k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
270
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Speed Design
sergeychernyshev
28
820
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Building an army of robots
kneath
303
45k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
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