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
AIAgentの限界を超え、 現場を動かすWorkflowAgentの設計と実践
miyatakoji
0
130
業務自動化プラットフォーム Google Agentspace に入門してみる #devio2025
maroon1st
0
190
神回のメカニズムと再現方法/Mechanisms and Playbook for Kamikai scrumat2025
moriyuya
4
520
"複雑なデータ処理 × 静的サイト" を両立させる、楽をするRails運用 / A low-effort Rails workflow that combines “Complex Data Processing × Static Sites”
hogelog
3
1.9k
Function calling機能をPLaMo2に実装するには / PFN LLMセミナー
pfn
PRO
0
910
PLaMo2シリーズのvLLM実装 / PFN LLM セミナー
pfn
PRO
2
970
多野優介
tanoyusuke
1
410
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
What is BigQuery?
aizack_harks
0
130
Findy Team+のSOC2取得までの道のり
rvirus0817
0
320
Goにおける 生成AIによるコード生成の ベンチマーク評価入門
daisuketakeda
2
100
ユニットテストに対する考え方の変遷 / Everyone should watch his live coding
mdstoy
0
120
Featured
See All Featured
How to Ace a Technical Interview
jacobian
280
23k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
The Straight Up "How To Draw Better" Workshop
denniskardys
237
140k
Writing Fast Ruby
sferik
629
62k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
GraphQLとの向き合い方2022年版
quramy
49
14k
Designing for Performance
lara
610
69k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Unsuck your backbone
ammeep
671
58k
Become a Pro
speakerdeck
PRO
29
5.5k
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 !