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
スモールプロダクト制の今までとこれから / cabasecamp-smallproduct
Search
CyberAgent
PRO
February 22, 2019
Technology
0
340
スモールプロダクト制の今までとこれから / cabasecamp-smallproduct
サイバーエージェントの技術者(エンジニア・クリエイター)向けカンファレンス『CA BASE CAMP 2019』
スモールプロダクト制の今までとこれから
三木 俊作
CyberAgent
PRO
February 22, 2019
Tweet
Share
More Decks by CyberAgent
See All by CyberAgent
未来のテレビを形づくる ABEMAのグロース戦略:ユーザー体験と品質向上のアプローチ
cyberagentdevelopers
PRO
0
280
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
130
生成AIは安心・安全に貢献できるのか
cyberagentdevelopers
PRO
0
17
AIの血肉となるアノテーションデータのために大事にしている事
cyberagentdevelopers
PRO
2
20
ABEMA NEWSにおける映像データを活用した記事生成AI 〜記事制作者に寄り添ったソリューションにするまで〜
cyberagentdevelopers
PRO
0
36
ACL 2024 参加報告
cyberagentdevelopers
PRO
0
52
生成AIの強みと弱みを理解して、生成AIがもたらすパワーをプロダクトの価値へ繋げるために実践したこと / advance-ai-generating
cyberagentdevelopers
PRO
1
290
SNSマーケティングに革新! ABEMA サッカー動画切り出しを生成AIで自動化し、業務効率化を狙う! / abema-ai-marketing
cyberagentdevelopers
PRO
2
160
新卒1年目が挑む!生成AI × マルチエージェントで実現する次世代オンボーディング / operation-ai-onboarding
cyberagentdevelopers
PRO
1
250
Other Decks in Technology
See All in Technology
安心してください、日本語使えますよ―Ubuntu日本語Remix提供休止に寄せて― 2024-11-17
nobutomurata
1
1.1k
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
310
コンパウンド戦略に向けた技術選定とリアーキテクチャ
kworkdev
PRO
1
2.8k
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
1
270
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
190
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.2k
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
210
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
140
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
1
180
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
280
Continuous Integration! Raising the Bar
tdpauw
1
110
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
170
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
740
Rails Girls Zürich Keynote
gr2m
94
13k
Designing Experiences People Love
moore
138
23k
We Have a Design System, Now What?
morganepeng
50
7.2k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
860
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Transcript
εϞʔϧϓϩμΫτ੍ͷ ࠓ·Ͱͱ͜Ε͔Β
ࡾ ढ़࡞ • 2017த్ೖࣾ • AmebaΞϓϦiOSνʔϜϦʔμʔ ։ൃͱνʔϜϚωʔδϝϯτΛ͠ͳ͕ΒAmebaԣஅͰٕ ज़৫Λྑ͍ͯ͘͘͠Έ͍ͨͳ͜ͱΛੜۀʹͯ͠·͢ @shun_sakuuuu shun-mk
1.Amebaͷࠓ·Ͱ 2.εϞʔϧϓϩμΫτͱʁ 3.࣮ફεϞʔϧϓϩμΫτ 4.͜Ε͔Βͷ
Amebaͷࠓ·Ͱ
Amebaͷࠓ·Ͱ • ͍ͭಥવࢪࡦʹΞαΠϯ͞ΕΔ͚Ͳ͜ΕͬͯͳΜͰΔΜͩΖ͏ɻɻɻ • ͦͦ͜ͷࢪࡦʹ͕ࣗΞαΠϯ͞Εͨഎܠ͕Α͘Θ͔Μͳ͍ • ༷มߋ͕ϦϦʔεલʹ͖ͬͯͯͯΜΘΜ • ͱΓ͋͑ͣݴΘΕ͔ͨΒΔ͔͊
Amebaͷࠓ·Ͱ • ࠷ॳͷϦϦʔεʹؒʹ߹Θͳͯ͘ݟૹͬͨػೳΛ࣮͢ΔػձΛ༩͑ΒΕ ͣࢮΜͰ͍͘ • ͱΓ͋͑ͣϦϦʔεͨ͠ͷͷ࣮͕Α͘Θ͔Βͳ͍ • ͜ͷؒϦϦʔε͔ͨͬ͠ΓͳͷʹԿނ͔͏৽ͷ͕Ͱ͍ͯΔ
͜ΕΛଓ͚ΔͱͲ͏ͳΔ͔ɾɾɾ
ΔؾɾαʔϏεͷѪΛࣦ͍ͬͯ͘
Amebaͷࠓ·Ͱ • τοϓμϯͰࢪࡦ͕མͪͯ͘Δ(ೲಘײͷෆ) • ༷ͷ٧Ίʹೖ͍ͬͯͳ͍(ෆຬͷ૿Ճ) • ࣄۀతͳࣈ͕શ͘ݟ͍͑ͯͳ͍ɾݟΑ͏ͱ͍ͯ͠ͳ͍(ୡײͷෆ) ͜͏ͳͬͨͷԿ͕ݪҼʁʁ
10݄εϞʔϧϓϩμΫτര
εϞʔϧϓϩμΫτͱʁ
εϞʔϧϓϩμΫτͱ ߘ Ӿཡ ೝূ
εϞʔϧϓϩμΫτͱ ɹɹɹߘ ɹɹӾཡɹɹɹɹɹ ೝূ ΦϯϘʔσΟϯ ά ϦΞΫγϣϯ ߘ ϒϥβ
ΞϓϦ DCҠઃ
εϞʔϧϓϩμΫτͱ ɹɹɹߘ ɹɹӾཡɹɹɹɹɹ ೝূ ΦϯϘʔσΟϯ ά ϦΞΫγϣϯ ߘ ϒϥβ
ΞϓϦ ग़ձ͍ ϑΥϩʔ ΤσΟλ ͑͜ ग़ձ͍ DCҠઃ ձһొ ి൪߸ ೝূ ϑΥϩʔ
εϞʔϧϓϩμΫτͱ • Amebaʹ༷ʑͳػೳ͕ଘࡏ͍ͯ͠Δ • Ӿཡ(ϒϩάAmebaτϐοΫεͷӾཡɾϒϩΨʔϑΥϩʔɾӾཡཤྺ) • ߘ(ϒϩάͷߘɾΫϦοϓϒϩάͷߘɾΤσΟλ) • ೝূ…etc ৫͕େ͖͗͢Δ
εϞʔϧϓϩμΫτͱ • ֤ػೳʹूதͯ͠ίϛοτ͢Δ͜ͱͰࢪࡦޮՌͷ࠷େԽ͕ਤΕ ΔͷͰʁʁ • ৽͍͠ઓΛ͍ͨ࣌͠νʔϜԽ͞Εͯ৫ͱͯ͠୭͕ԿΛͯ͠ ͍Δ͔໌֬ʹͳΔ • ৬छΛ͑ͯࣄۀՌʹίϛοτ͢ΔνʔϜΛࢦ͢
εϞʔϧϓϩμΫτͱ • ֤ػೳʹूதͯ͠ίϛοτ͢Δ͜ͱͰࢪࡦޮՌͷ࠷େԽ͕ਤΕ ΔͷͰʁʁ • ৽͍͠ઓΛ͍ͨ࣌͠νʔϜԽ͞Εͯ৫ͱͯ͠୭͕ԿΛͯ͠ ͍Δ͔໌֬ʹͳΔ • ৬छΛ͑ͯࣄۀՌʹίϛοτ͢ΔνʔϜΛࢦ͢
εϞʔϧϓϩμΫτͱ • ͦΕͧΕͷεϞʔϧϓϩμΫτຖʹKPIΛઃఆ • KPIΛୡ͢ΔͨΊʹͲΜͳࢪࡦɾػೳΛϦϦʔε͢Δ͔ΛνʔϜ ͰܾΊΔ • ܾΊͨࢪࡦɾػೳ͕ਖ਼͍͠ํ͔૬ஊ • ։ൃʗϦϦʔε
• ࣈ͕Ͳ͏ͳ͔ͬͨ֬ೝޙKPT
࣮ફεϞʔϧϓϩμΫτ
ྑ͔ͬͨͱ͜Ζ
αʔϏεͷѪɾཧղ্
࣮ફεϞʔϧϓϩμΫτ • ϢʔβʔʹԿͷػೳΛఏڙ͢Δ͔Λߟ͑ΔͷͬͺΓָ͍͠ • ࠓ·ͰͷAmebaʹෆ͍ͯͨ͠αʔϏεΛ࡞͍ͬͯ͘ײͷ্ • ࣈʹରͯ͠ͷҙ͕ࣝࣗવͱ͍ͯ͘Δ
ϓϩμΫτϝϯόʔͱإΛ߹ΘͤΔ ػձΛઃ͚͍͢
࣮ફεϞʔϧϓϩμΫτ •ϏδɺςΫɺσβͷ୭͕ؔͯ͠Δ͔͕͙͢Θ͔Δ •ேձ༦ձͷఆྫΛ։࠵͍͢͠ •ͦΕͧΕͷ৬छͷਐḿঢ়گΛڞ༗͍͢͠ •KPTɺৼΓฦΓ࣮ࢪ͘͢͠ͳͬͨ
νʔϜͷঢ়گ͕͖ͬΓݟ͑ͯ͘Δ
࣮ફεϞʔϧϓϩμΫτ •ඞͣௐͷͱ͜Ζͱෆௐͳͱ͜Ζ͕ग़ͯ͘Δ •ௐʗෆௐͲͪΒ༷ʑͳཁҼ͕བྷΜͰ͍Δ •ͦͷঢ়ଶʹؕͬͨݪҼΛώΞϦϯά͠ల։͢Δ͜ͱ ͰφϨοδΛڞ༗ɾੵͰ͖Δ
ѱ͔ͬͨͱ͜Ζɾ͖͔ͭͬͨͱ͜Ζ
ෳͷεϞʔϧϓϩμΫτͷཧ ਏ͗͢
࣮ફεϞʔϧϓϩμΫτ • ࠷ऴతʹϦϦʔε͞ΕΔΞϓϦҰͭ • ҰͭͷεϞʔϧϓϩμΫτͷԆ͕ϦϦʔεΛ৳͢Մೳੑ • ݁Ռతʹͯ͢ͷεϞʔϧϓϩμΫτͷϦϦʔε͕Εͯ͠·͏ةػ • ͦΕͧΕͰ։ൃͨ͠ػೳͷ༷ΛѲ͢Δ͚ͩͰڰؾͷࠫଡ
ҰͷϦϦʔεʹػೳ٧ΊࠐΈ͗͢
࣮ફεϞʔϧϓϩμΫτ • ͦΕͧΕͷϓϩμΫτຖʹՌΛ࠷େԽ͢ΔͬͯҙຯͰؒҧͬͯ ͳ͍ • ࠓ·ͰͩͬͨΒ࣌ظͣΒͯ͠ϦϦʔε͠·͠ΐ͏ͬͯϨϕϧͷࢪࡦ͕ Ұؾʹ̏ͭϦϦʔεʹͬͨΓͱ͔…
࣮ફεϞʔϧϓϩμΫτ • େ͖͍ػೳͷPull Request͕සൃ͢Δ͜ͱʹΑΓେͳίϯϑϦΫ τ͕ൃੜ • Ϛʔδεέδϡʔϧͷௐ(ීஈΒͳ͍)ςετͷ૿େί ετ͕ΓΓʹ
εϞʔϧϓϩμΫτʹଐ͞ͳ͍Ҋ݅
࣮ફεϞʔϧϓϩμΫτ • εϞʔϧϓϩμΫτԽ͞Ε͍ͯͳׂ͍͕ͱఆৗతʹଘࡏ͍ͯ͠ΔҊ݅ ͕ଘࡏͨ͠(ࠂͷಋೖɺCSରԠ…etc) • ͦΕͧΕͷεϞʔϧϓϩμΫτʹΞαΠϯ͞Ε͍ͯΔϝϯόʔ͕ϑϧ ίϛοτͷঢ়گͱͳ͍ͬͯͨ • ݁Ռతʹຫੑతͳਓखෆײ͕൱Ίͳ͍ঢ়ଶʹ
͜Ε͔Βͷ
QͰ࣮ફͯ͠Έͯ݁ՌͲ͏͔ͩͬͨʁ
ݸਓతʹͱͯྑ͍ํʹਐΜͰ͍Δ ͱࢥ͍ͬͯΔ
͜Ε͔Βͷ • ࠓ·ͰͷAmebaͰͨ͠ෆຬΈ͍ͨͳͱ͜Ζ֓Ͷղফ͞Ε͍ͯΔ (ೲಘײͷෆɺෆຬͷ૿Ճɺୡײͷෆ) • ୲͍ͯ͠ΔϓϩμΫτ͕໌֬ͳͷͰඪΛઃఆ͍͢͠ • ࣗͨͪͰߟ͑ͨࢪࡦ͕ϦϦʔεͰ͖ΔͷͰαʔϏεΛ࡞͍ͬͯΔײ ͕ڧ͍ •
ෆ͕ͪ͠ͳ͍ࠐ·ΕͯΔ࣌ͷίϛϡχέʔγϣϯ͕׆ൃԽ
͡Ό͋͜ͷ··Ͱ͍͍ͷ͔ʁʁ
൱
͜Ε͔Βͷ • ࣮ફͰͨ͠ͱ͓Γ՝ࢁੵΈ • Ξϓϩʔν͍Ζ͍Ζ͋Γͦ͏ • ෳεϞʔϧϓϩμΫτͷཧํ๏ • ϦϦʔεαΠΫϧͷݟ͠ •
ϝϯόʔͷՔಇঢ়ଶͷѲ
͜Ε͔Βͷ • ྺ࢙͕͘େ͖͍৫Λ͙͢ʹվֵ͢Δ͜ͱແཧ • εϞʔϧϓϩμΫτ͕มֵͷऔֻ͔ͬΓʹͳͬͯཉ͍͠ • εϞʔϧϓϩμΫτ͚ͩͰҙࢥܾఆΛߦ͍εϐʔυײΛ ͬͯΕΔΑ͏ʹ͍ͨ͠ • QຖͷKPTΛܧଓ͠ৗʹਐԽ͢Δඞཁ͕͋Δ
αʔϏεΛਐԽɾͤ͞ΔͨΊʹɺ ͳΓΛഉআ͠ɺ ৫ৗʹਐԽɾ͠ͳͯ͘ͳΒͳ͍
͋Γ͕ͱ͏͍͟͝·ͨ͠