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
AbemaTVの開発スタイル
Search
Hirotaka Osaki
October 15, 2016
Technology
35
12k
AbemaTVの開発スタイル
AbemaTV Developer Conference 2016
http://developer.abema.io/
Hirotaka Osaki
October 15, 2016
Tweet
Share
More Decks by Hirotaka Osaki
See All by Hirotaka Osaki
プロジェクト開発カードゲーム ルール説明(2016/12/15版)
hiroosak
0
1k
Other Decks in Technology
See All in Technology
ゴリラ.vim #36 ~ Vim x SNS ~ スポンサーセッション
yasunori0418
1
350
データプレーンプログラミングとは? DPU&スイッチASICの開発経験から語る
ebiken
PRO
1
260
Scale Security Programs with Scorecarding
ramimac
0
430
GigaViewerにおけるMackerel APM導入の裏側
7474
0
460
AIとSREの未来 / AI and SRE
ymotongpoo
2
1.3k
Devin&Cursor、それぞれの「本質」から導く最適ユースケース戦略
empitsu
8
2.5k
What's Next in OpenShift Q2 CY2025
redhatlivestreaming
1
820
AIの電力問題を概観する
rmaruy
1
210
Slackひと声でブログ校正!Claudeレビュー自動化編
yusukeshimizu
3
180
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
25k
CSS polyfill とその未来
ken7253
0
140
テストを実施する前に考えるべきテストの話 / Thinking About Testing Before You Test
nihonbuson
PRO
14
2k
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Unsuck your backbone
ammeep
671
58k
Adopting Sorbet at Scale
ufuk
76
9.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
RailsConf 2023
tenderlove
30
1.1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Transcript
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 !