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
AbemaTVの開発スタイル
Search
Hirotaka Osaki
October 15, 2016
Technology
12k
35
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AbemaTVの開発スタイル
AbemaTV Developer Conference 2016
http://developer.abema.io/
Hirotaka Osaki
October 15, 2016
Transcript
33 slides
AbemaTVͷ։ൃελΠϧ ϑϩϯτΤϯυΤϯδχΞ େ㟒 ߒਸ
ࣗݾհ 2015.4 - 2016.7 େ㟒 ߒਸ (id: taizo) FRESH! by
AbemaTV αʔόʔαΠυΤϯδχΞ ݉ εΫϥϜϚελʔ AbemaTV εΫϥϜϚελʔิࠤ (݉) 2016.5 - 2016.7 AbemaTV ϑϩϯτΤϯυΤϯδχΞ 2016.8 -
Podcast ͬͯ·͢ • engineer meeting podcast ( twitter: @engineermeeting )
• https://soundcloud.com/engineer-meeting • 2લ͔ΒࣾͰ׆༂͍ͯ͠ΔํʑΛήετʹݺΜͩΓɺ ແବΛ͢ΔΤϯδχΞܥPodcast • ਂϥδΦܥ IT Podcast Λࢦͯ͠·͢
ΞδΣϯμ • AbemaTV,FRESHͷ։ൃελΠϧͷϕʔε • FRESH, AbemaTVͷదԠʹ͍ͭͯ
લఏ • ࠓճɺ͕ࣗॴଐ͍ͯͨ࣌͠ظ͕த৺ ʮFRESH ͷ৽ن্ཱͪ͛ظʯ ʮAbemaTV ͷϦϦʔεޙͷӡ༻ʯ
جຊతͳ։ൃελΠϧ
ϕʔεεΫϥϜ ४උ εϓϦϯτ εϓϦϯτ εϓϦϯτ
εϓϦϯτΛ͡ΊΔલͷ४උ • ΞδϟΠϧαϜϥΠ ʹ͋ΔΠϯηϓγϣϯσο Ω͕ݩ • ϝϯόʔશମʹͲ͏͍͏αʔϏεΛ࡞Δ͔ͷೝࣝ ߹Θͤ
FRESHͷ߹ 2015-04-02, 03 ʹ࣮ࢪ ΞδϟΠϧαϜϥΠʹ͋Δ ΠϯηϓγϣϯσοΩΛ Ұ௨Γ ͠߹͍ ίϯηϓτΠϝʔδͷ࡞ →
ͬ͘͟Γ12݄಄ϦϦʔε ݟੵΓ→ ݁Ռ ํస͋Γ 2016-01-21 ϦϦʔε
εϓϦϯτ • λΠϜϘοΫε(εϓϦϯτ)2िؒΛ۠Δ • εϓϦϯτܭըϛʔςΟϯάΛ࣮ࢪ͠ɺλεΫͷ༏ઌॱҐΛܾ ΊɺݟੵΓΛߦ͍ɺ͔ͦ͜ΒεϓϦϯτͰΔ͖λεΫΛ ܭը͢Δ • ຖ15͘Β͍ͷσΠϦʔεΫϥϜΛߦ͍ɺνʔϜͷঢ়گΛ֬ ೝ͢Δ
• εϓϦϯτϨϏϡʔͰɺՌͷ֬ೝΛߦ͏ • ͦͷεϓϦϯτͰͷվળͷͨΊʹɺ νʔϜͰ;Γ͔͑ΓΛߦ͏
Α͍ͬͯ͘Δπʔϧ • Slack (chat) • JIRA (νέοτཧ) • Confluence (Wiki)
• esa (Wiki) • GitHub (ιʔείʔυཧ) • CircleCI (CI) • Jenkins (CI) ΞϓϦͷϏϧυͰར༻ • Codecov (ϓϧϦΫͷΧόϨοδࣗಈԽ) • asana (Ψϯτνϟʔτ) ࠓճ ࣌ؒͷ߹Ͱৄࡉলུɻ http://www.atmarkit.co.jp/ait/articles/1609/01/ news032.html ࢀߟ
ϕʔεΛϓϩδΣΫτʹదԠ͢Δ ͦͷ··֤ϓϩδΣΫτʹదԠ͢Δͷ͍͠ • ߟྀ͠ͳ͚Ε͍͚ͳ͍ཁૉ • ৫ • νʔϜ • ਓ
• ঢ়گ ͳͲͳͲ • ͢Ͱʹ͋ΔϧʔϧจԽɺνʔϜϝϯόʔΛݟͯ దͳϓϥΫςΟεͷऔࣺબΛ͍ͯ͘͜͠ͱʹͳΔ
νʔϜਓʹదԠ͢Δ FRESH AbemaTV ։ൃ: 20ਓલޙ ։ൃҎ֎: 10ਓલޙ ։ൃ: 30ਓʙ ։ൃҎ֎:
100ਓʙ? εΫϥϜνʔϜଟͯ͘10ʙ15ਓ͕ݶք • ղ͕ඞཁʹͳΔ
νʔϜΛղ͢Δ • 10ਓޙ͔ΒͻͱͭͷεΫϥϜνʔϜͰ Γ͘Γ͢Δͷ͘͠ͳΔ • FRESHׂͰׂɻ ֤ϦʔμʔͱDir, ऀͷ·ͱΊΛboardͱͯ͠ ঢ়گΛѲ͢ΔΑ͏ʹͨ͠ΓϙʔτϑΥϦΦόοΫϩάΛ ཧͨ͠Γͨ͠
board server front design iOS Android
νʔϜΛղ͢Δ • AbemaTVجຊׂͰׂ • ن͕େ͖͘ͳΔͱԣͷ࿈ܞ͕ऑ͘ͳΔ • ػೳ͝ͱʹϓϩδΣΫτΛ࡞ΓਓΛΞαΠϯ͢Δ͜ͱͰ ԣͷ࿈ܞΛڧΊΔΑ͏ʹͨ͠ board server
front design iOS Android Project A Project B Project C
ঢ়گʹదԠ͢Δ ϕʔεεΫϥϜ։ൃͱ͍ͬͯɺ ΨϯτνϟʔτΛͻ͍ͨΓɺ ΓํΛม͑ͨΓ͢Δ߹͋Δ ྫ) FRESH 201511݄த० ϦϦʔε༧ఆ͕12݄લͩͬͨ࣌ʹɺ ΞϓϦ͕ॎσβΠϯ͔ΒԣσβΠϯʹ͢ΔΑ͏ʹ ͱ͍͏͕͕͋ͬͨ
FRESH ॎ͔Βԣ ࣄ݅ • ܾ·ͬͨ࣌ͰϦϦʔε༧ఆ·ͰΓ2εϓϦϯτ(4ि) ͩͬͨɻ • ༧ఆ͍ͯͨ͠ػೳΛϦϦʔεείʔϓ͔Β֎ͯ͠ ԣରԠʹྗ(είʔϓͷมߋ)ɻظͷมߋͳ͠ •
࠷ॳʹσβΠϯεϓϦϯτΛߦͬͯΰʔϧͷೝࣝ౷Ұ • ͋ͱϝϯόʔʹͤΔ • → ݁Ռɺ։ൃྃʹɻ։ൃͷ֎ؚΊͨ߹Ͱ ϦϦʔε1݄
νʔϜͷߟ͑ํʹదԠ͢Δ νʔϜ࣌ͱ߹ʹΑͬͯࢥߟ͕มΘΔ • ՝͔Β։ൃऀͨͪͰ༷Λམͱ͠ࠐΈ͍ͨ • → FRESH • σΟϨΫλʔɾϓϥϯφʔ͕མͱ͠ࠐΜͰ͔Β ։ൃணख͍ͨ͠
• → AbemaTV
νʔϜͷߟ͑ํʹదԠ͢Δ • FRESH Ͱղੳ(Ϛʔέ)୲͔Β ܭଌ݁ՌΛݟͯɺͲ͜ͷࣈΛ͋͛Δ͖͔Λ νʔϜϝϯόʔͰߟ͑ͯࢪࡦΛग़͢ձΛઃ͚ͨ GAͷඪୡϓϩηεϨϙʔτΛϝϯόʔʹڞ༗ ͦΕͧΕͷվળҊΛߟ͑Δ → ͨͩ͠ࣈΛ্͛Δͷ։ൃऀઢ͚ͩͩͱ
͍͘͢͝͠ (MAU Λ 5% ্͛Δ ͳͲ)
ਓʹదԠ͢Δ • ։ൃऀݸਓͰԿ͕࠷ॏཁ՝͔༷ʑ αʔϏεͷ ࣈ৳͍ͨ͠! ΧϦΧϦʹ νϡʔχϯά ͍ͨ͠ʂ ૣ͘ग़ͯ͠ ࣈݟͯվળ͍ͨ͠ʂ
ਓͷʹ ๙ΊΒΕ͍ͨʂ Ժ͔ʹ Β͍ͨ͠ ࠷ઌΛ ಥ͖ਐΈ͍ͨʂ ͔͍͍ͬ͜ αʔϏε࡞Γ͍ͨʂ ύϑΥʔϚϯεΛ ͞Βʹ্͍͛ͨʂ UX! UX! ϢʔβʔςετΛ ͖ͪΜͱߦ͍͍ͨʂ ΈΜͳʹΘΕΔ αʔϏεΛ࡞Γ͍ͨʂ ᘳͳͷΛ ࡞Γ͍ͨʂ ͜͏͢Ε ͬͱྑ͘ͳΔʂ
ධՁ੍ • AbemaTVͷάϨʔυ੍ͷҙຯ͚ͮ AbemaTVͰͷҙຯ͚ͮ S6 S5+࣮+α ࣮ʹՃ͑ͯɺϩʔϧϞσϧʹͳΓ͑Δ͔(पΓ͔Βଚܟ͞ΕΔ ਓ֨ɺٕज़ऀͱͯ͠ͷ࢟ɺߩݙҙཉ) S5 ϦʔυΤϯδχΞ
+ α ಛఆͷͰलͰٕͨज़ྗ+૯߹తͳٕज़ྗ ࠶ݱੑͷ͋Δύ ϑΥʔϚϯε S4 ϦʔυΤϯδχΞ ٕज़ʹΑͬͯݸཱ͕͓ͬͯΓɺٕज़ͰνʔϜΛϦʔυͰ͖Δ ݸͱͯ͠ɺٕज़қͷߴ͍Ҋ݅ͰՌΛग़ͤΔ S3.5 Ұਓલ + α ࣮ݱ͍ͨ͜͠ͱ(ᐆດͳҊ݅Ͱ)ʹରͯ͠ ࣄ٧ΊεέδϡʔϧௐؚΊͯҰਓশͰऔΓΊ ແࣄʹϦϦʔε·Ͱ͍͚࣋ͬͯΔ S3 Ұਓલ ༩͑ΒΕͨҊ݅ʹ͍ͨͯ͠ɺجຊઃܭɾৄࡉઃܭɾ࣮ɾςε τɾϦϦʔεɾӡ༻·ͰܾΊΒΕͨεέδϡʔϧʹैͬͯࣗ Ͱ͖Δ͜ͱ S2 ਓલ S1
ࣗͰ͖ΔΤϯδχΞ • اۀจԽͱͯ͠ɺ·ͣࣗͰ͖ΔΤϯδχΞʹͳ Δ͜ͱ͕ඪ • ࣗͷϥΠϯͱͯ͠ɺ·ͣ S3.5 ࣮ݱ͍ͨ͜͠ͱ(ᐆດͳҊ݅Ͱ)ʹରͯ͠ ࣄ٧ΊεέδϡʔϧௐؚΊͯҰਓশͰऔΓΊ ແࣄʹϦϦʔε·Ͱ͍͚࣋ͬͯΔ
ࣗͰ͖ΔͳΒݖݶΛ࣋ͯΔ • ࣗͰ͖Δਓʹରͯ͠ ݖݶΛݶΓͳ͘༩͑Δͱ͍͏จԽ • ࣗͰ͖Δਓಛʹཧ͠ͳͯ͘ ϓϩδΣΫτΛճ͢͜ͱ͕Ͱ͖Δ
ཧతͳཱͪৼΔ͍ ※ ͪΖΜେ͖͍λεΫʹ͍ͭͯ ͜ΕͰແ͘ɺ͖ͪΜͱͨ͠ϑϩʔͰܭը͢Δ͠ ͕͔͔࣌ؒΔ༰ͷ߹ɺͦΕΛઆ໌Ͱ͖Δɻ ͜ΕϢʔβʔͷརศੑߟ͑Δͱݫ͍͔͠Β ૣΊʹͯ͠ཉ͍͠Ͱ͢ ͋ɺ͡Ό͋࣍ͷϦϦʔε·Ͱʹؒʹ߹͍ͦ ͏ͳͷͰೖΕ͓͖ͯ·͢ʔ ΑΖ͓͘͠ئ͍͠·͢ʂ
উखʹ՝Λݟ͚ͭͯରԠ͢Δ • ࣗͰ͖Δਓউखʹ ՝Λݟ͚ͭͯରԠͰ͖Δ • ܭը͢Δલʹख͕ಈ͍ͯऴΘΒ͍ͤͯΔ߹ ͋Δ • ཧ͗͢͠Δͱ ݸਓͷύϑΥʔϚϯεΛग़͠Εͳ͍
Մೳੑ͕͋Δ͕࣌͋Δ
AbemaTVͷจԽ • ࣗΛͰ͖ΔਓͨͪΛूΊ͍ͯΔ • ϝϯόʔࡋྔݖΛ༩͑ɺݸਓ͕࠷େݶೳྗΛൃ شͰ͖ΔڥΛ༻ҙ͍ͯ͠Δ • ཧ࠷ݶ • ͳͷͰϦϞʔτ։ൃʹ༰
Ϛωδϝϯτίετ ߴ ݸਓεΩϧ ߴ 1. νʔϜ։ൃͷೝࣝڞ༗ ։ൃޮఈ্͛ͷ ϓϥΫςΟεΛར༻
2. ֤ݸਓΛ࠷େԽͱ ϚωδϝϯτίετͷݮΛ ηοτͰਐΊ͍ͯ͘
AbemaTVͷεϓϦϯτ • λΠϜϘοΫε(εϓϦϯτ)2िؒΛ۠Δ • εϓϦϯτܭըϛʔςΟϯάΛ࣮ࢪ͠ɺλεΫͷ༏ઌॱҐΛܾΊɺ ݟੵΓΛߦ͍ɺ͔ͦ͜ΒεϓϦϯτͰΔ͖λεΫΛܭը͢ Δ • ຖ15͘Β͍ͷσΠϦʔεΫϥϜΛߦ͍ɺνʔϜͷঢ়گΛ֬ೝ ͢Δ
• εϓϦϯτϨϏϡʔͰɺՌͷ֬ೝΛߦ͏ ใڞ༗ձΛ࣮ࢪ • ͦͷεϓϦϯτͰͷվળͷͨΊʹɺ νʔϜͰ;Γ͔͑ΓΛߦ͏
σϝϦοτʁ • ݸਓʹґଘ͢ΔͷͰଐਓԽ͢Δ • ͨͩɺAbemaTVFRESHɺ։ൃεϐʔυΛམ ͱ͢ΑΓଐਓԽͰͬͯޙ͔ΒνʔϜʹڞ༗͢ Δମ੍ • νʔϜͷษڧձͳͲͰ νʔϜશମͷఈ্͛Λੵۃతʹߦ͏
·ͱΊ • AbemaTV, FRESHͷ։ൃελΠϧͷϕʔε εΫϥϜ։ൃ • ਓνʔϜͷੑ࣭ɺঢ়گʹΑͬͯ͋·Γ ݻࣥͤͣʹΓํΛม͍͑ͯΔ • اۀจԽʹΑΓɺ·ཱͣࣗͰग़དྷ͍ͯΔਓ͕
େ͖͘׆༂Ͱ͖Δମ੍ʹͳ͍ͬͯΔ • ͦΕΛޙ͔ΒΧόʔͰ͖Δ ମ੍ͱηοτͰߟ͍͑ͯΔ
උߟ: ࠷ۙνʔϜϏϧσΟϯάͰࢀߟʹͨ͠ࢿྉ εϥΠυ • ͋ͳͨͷνʔϜͷʮ͍͍ਓʯػೳ͍ͯ͠·͔͢ʁ http://www.slideshare.net/MinoruYokomichi/ss-57211075 • ։ൃ৫Ϛωδϝϯτͷίπ https://speakerdeck.com/naoya/kai-fa-zu-zhi-manezimentofalsekotu •
Netflix Culture http://www.slideshare.net/reed2001/culture-1798664 Web • σβΠφʔԣஅ৫ͷมભ http://techlife.cookpad.com/entry/2016/07/15/092518
උߟ: ࠷ۙνʔϜϏϧσΟϯάͰࢀߟʹͨ͠ࢿྉ ຊ • ΞδϟΠϧαϜϥΠ http://amzn.to/2dZMY0Q • νʔϜ͕ػೳ͢ΔͱͲ͏͍͏͜ͱ͔ http://amzn.to/2dZPST8 •
৫ύλʔϯ http://amzn.to/2ejeJG3 • σΟγϓϦϯυɾΞδϟΠϧɾσϦόϦʔ http://amzn.to/2ejej27 • ΤΫετϦʔϜϓϩάϥϛϯά http://amzn.to/2ejeyul • Team Geek http://amzn.to/2dZJFGP • ຊاۀͷࣾһɺ ͳͥ͜ΜͳʹϞνϕʔγϣϯ͕ ͍ͷ͔ʁ http://amzn.to/2dZNITT
Thanks !
More Decks by Hirotaka Osaki
See All by Hirotaka Osaki
プロジェクト開発カードゲーム ルール説明(2016/12/15版)
hiroosak
0
1.1k
Other Decks in Technology
See All in Technology
Biohub - Cell Tracking During Development 5th place solution
rist
0
160
セキュリティ専任チームなしで攻撃を先回りするSREが実践したSIEM on Amazon OpenSearch Service
cscengineer
PRO
1
890
The Author Pays
hiccupps
0
220
生成AI時代のIAMのマニアックな話
takuros
6
3.2k
属人化したISMS運用をGitHubとAIで仕組み化した1年間の記録
sioncojp
4
2.6k
田んぼの見回りをIoTで減らしたい!水位監視から電池駆動カメラまでの試行錯誤
itosoft
1
210
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
17
120k
AWS基盤改善を支える 私たちの理念と行動指針
kentosuzuki
0
220
Quick Automate | 目指せ Quick マスター 12
inariku
PRO
1
110
An Introduction to Context Ontology Accelerator (teaching AI agents what your data means)
inariku
PRO
1
260
長い仕事を任せる (Workflows、クラウドセッション、Kiro Web) | 目指せ Kiro マスター 10
inariku
PRO
3
200
AI時代の組織作り:チーム開発から「個人×AI」への移行と、持続可能な「開発資本」の築き方
ham0215
3
840
Featured
See All Featured
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
460
Darren the Foodie - Storyboard
khoart
PRO
5
4.1k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.9k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.8k
Ruling the World: When Life Gets Gamed
codingconduct
0
440
Java REST API Framework Comparison - PWX 2021
mraible
34
9.8k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
530
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Optimizing for Happiness
mojombo
378
71k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.7k