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
640
【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
47
LLMを使ったチームのプロダクト開発の生産性を向上させる取り組み
coa00
0
31
Amplify Boostup #2 monorepo 運用による複数プロジェクト開発
coa00
0
630
サーバレス技術を活用したエンジョイ スピード開発
coa00
1
340
Expo と Amplifyを使って Webとアプリを同時開発
coa00
0
1.4k
Expo & Amplifyを使ってWebとアプリを同時開発した話
coa00
2
960
Other Decks in Technology
See All in Technology
Copilot coding agentにベットしたいCTOが開発組織で取り組んだこと / GitHub Copilot coding agent in Team
tnir
0
150
スタートアップに選択肢を 〜生成AIを活用したセカンダリー事業への挑戦〜
nstock
0
290
ロールが細分化された組織でSREは何をするか?
tgidgd
1
210
IPA&AWSダブル全冠が明かす、人生を変えた勉強法のすべて
iwamot
PRO
2
220
サイバーエージェントグループのSRE10年の歩みとAI時代の生存戦略
shotatsuge
4
840
cdk initで生成されるあのファイル達は何なのか/cdk-init-generated-files
tomoki10
1
550
〜『世界中の家族のこころのインフラ』を目指して”次の10年”へ〜 SREが導いたグローバルサービスの信頼性向上戦略とその舞台裏 / Towards the Next Decade: Enhancing Global Service Reliability
kohbis
3
1.1k
助けて! XからWaylandに移行しないと新しいGNOMEが使えなくなっちゃう 2025-07-12
nobutomurata
2
140
オフィスビルを監視しよう:フィジカル×デジタルにまたがるSLI/SLO設計と運用の難しさ / Monitoring Office Buildings: The Challenge of Physical-Digital SLI/SLO Design & Operation
bitkey
1
350
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
230
公開初日に Gemini CLI を試した話や FFmpeg と組み合わせてみた話など / Gemini CLI 初学者勉強会(#AI道場)
you
PRO
0
1k
AWS CDK 開発を成功に導くトラブルシューティングガイド
wandora58
3
170
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
53
7.7k
How to Ace a Technical Interview
jacobian
278
23k
Done Done
chrislema
184
16k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
RailsConf 2023
tenderlove
30
1.1k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
How STYLIGHT went responsive
nonsquared
100
5.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Raft: Consensus for Rubyists
vanstee
140
7k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Being A Developer After 40
akosma
90
590k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
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