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
モブプロ導入で見えてきた効果@オレシカナイト
Search
Yoshitomo Hayashi
October 12, 2018
Programming
1
880
モブプロ導入で見えてきた効果@オレシカナイト
Yoshitomo Hayashi
October 12, 2018
Tweet
Share
More Decks by Yoshitomo Hayashi
See All by Yoshitomo Hayashi
Ameba DSPのOpen-Auctionにおける入札戦略
yyhayashi303
2
2.6k
進化する配信ロジックとDSP戦略
yyhayashi303
1
130
CTRオンライン予測システムのアーキテクチャ
yyhayashi303
2
4.1k
CircuitBreakerの適用
yyhayashi303
0
1.6k
Other Decks in Programming
See All in Programming
Fragment Composition of GraphQL
quramy
4
810
dbtのドメイン分割による データ基盤の改善とDigdagとの連携
sakama
0
180
スキーマ駆動開発による品質とスピードの両立 - 私達は何故、スキーマを書くのか
kentaroutakeda
0
170
"config" ってなんだ? / What is "config"?
okashoi
0
240
ONE WEDGE_company_guide
1wedge_one
0
470
TYPO3 v13 – The road to LTS: What's new and new APIs
luisasofie_xoxo
0
200
冗長なエラーログを削減し、スタックトレースを手に入れる / Reducing Verbose Error Logs and Obtaining Stack Traces
upamune
0
520
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
140
雑に思考を整理する技術と効能
konifar
58
29k
Semantic search with Django and pgvector
pauloxnet
0
240
エンターテイメント業界で利用されるAWS
demuyan
0
210
PHPはいつから死んでいるかの調査
chiroruxx
1
400
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
274
13k
RailsConf 2023
tenderlove
4
540
Facilitating Awesome Meetings
lara
42
5.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
The Pragmatic Product Professional
lauravandoore
25
5.8k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
Stop Working from a Prison Cell
hatefulcrawdad
266
19k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
25
2.3k
Designing for Performance
lara
601
67k
Transcript
モブプロ導入で 見えてきた効果 アドテク×開発プロセス -オレシカナイトVol.8- 2018/10/12 (Fri) 林 欣朋
林 欣朋(Hayashi Yoshitomo) 所属: 株式会社サイバーエージェント メディア統括本部 アドテクノロジー開発部 経歴: 2011年 7-9月にCA
Androidアカデミー受講 2011年 12月中途入社 エンタメ事業本部(タレントアプリetc) 2013年 占い館SATORI立ち上げ 2015年 アドテクノロジー開発部に異動
今日お話すること • プロダクト紹介 • モブプロとは • モブプロを始めた理由 • モブプロの様子 •
振り返り(所感) • まとめ
プロダクトの紹介
None
モブプロとは
• モブプログラミングの略 • モブ(群衆) • 複数人で1つの画面を見な がら1つの機能を実装してい く開発手法。 モブプロとは
• 役割 ◦ ドライバー ▪ PCを操作する人 ◦ ナビゲーター ▪ 実装方法などの指示を行う人
• ルール(やり方) ◦ ドライバーはナビゲーターの指示 に従い操作する ◦ ドライバーとナビゲーターは定期 的に交代する モブプロとは(一般的なプラクティス) ドライバー ナビゲーター
モブプロを始めた理由
モブプロを始めた理由 Compass(行動指針)を体現し 真に自己組織化された組織を作る!!
Compass 1.Keep Trying, Keep Aiming Higher 新しい価値を創るための技術的挑戦をする。 目的に向かって開発する。 2.Be an
AdTechnologist アドテクのスペシャリストになる。 3.One for All, All for One 気持ちよく仕事をできるチーム作りを全員でやる。 隣人に敬意をはらう。
アドテク開発に必要なスキル • アドテク理解 ◦ DSP, SSP, DMP, ADNW ◦ CTR,
CVR, CPC, CPA, CPM, RTB, HB, Auction(1st, 2nd) ◦ 入札戦略, データ戦略 • ビジネス理解 ◦ 広告主, 代理店, 営業, コンサル, メディア ◦ 競合他社, プロダクトの立ち位置, 目指す先 • システム理解 ◦ 大量のコンポーネント ▪ アドサーバー, 計測サーバー, リアルタイム集計基盤, 機械学習システム (予測/学習), 各種バッチ, 管理画面, SDK etc.
AVA AVAチーム Ameba Infeed Ameba DSP 配信ロジック チーム 細分化されたチーム構成(約20人) 管理画面チーム
DSPチーム バックエンドチーム DMPチーム
AVA AVAチーム Ameba Infeed Ameba DSP 配信ロジック チーム 細分化されたチーム構成(約20人) 管理画面チーム
DSPチーム バックエンドチーム DMPチーム 担当領域のことしか わからない...
ダイレクトレスポンス チーム変更 データサイエンス DMP ブランド広告
ダイレクトレスポンス チーム変更 データサイエンス DMP ブランド広告 触ったことのない コンポーネントに 手を出しづらい...
だったらみんなで開発すれば いいじゃん!
モブプロの様子
モブプロ開発 • ディスプレイの前に集まる • 二人以上揃ったら始める • 毎日のモブプロ開始前に前回 のおさらいをする
ドライバーもナビゲータも発言しながら実装 モブプロ開発
モブプロ開発 • ドライバーの交代はキリのいい タイミングで • 自分のPCを使う
適宜休憩する モブプロ開発
モブプロで開発したもの • 動画広告CTR予測システム(3人) • DSP-CTR Bandit対応(4人) • APIコール最適化(3人) • フィードバック機能(2人)
• SSPつなぎ込み作業(3人)
モブプロ開発 「実装 → テスト → 本番デプロイ」 すべての工程を全員で行う
振り返り
• 楽しかった。一体感があってよかった • 他コンポーネントの理解が進んだ • 知らないコマンドやIDEのショートカットを知れた • その場でレスポンスもらえるので待ちが無い • 既存の仕様の不備を見つけられた
• コードの品質が上がった Keep
Problem • 仕様や前提知識がある人がいないと進められなくなる • 自分のタスクと、モブプロでやるタスクがあって大変 • 割り込みが発生する(障害調査等) • ドライバーを切り替えるタイミングが難しかった •
指示を出すのがしんどい • 充電切れがち
• 目指したい状態(Compassの体現)に近づいている ◦ 理解度が低そうなときにその場で説明できる • 恥ずかしい部分をさらけ出す体験 ◦ 組織の心理的安全性を高めるチャンス 所感
めちゃくちゃいい!! 所感
補足
モブプロって効率いいの?
• 実装速度は落ちた印象 ◦ 知ってる人がやるより時間はかかる ◦ みんな複数タスクを抱えていた • 効率より効果を優先したので問題ない ◦ ナレッジの共有という効果
モブプロって効率いいの?
• 2つのフローを組み合わせて効果的に ◦ 心理的フロー ▪ 没入感, 一体感, ゾーン状態 ◦ リーンフロー
▪ タスクを一つ一つ実行していくことで重要な問題を解決できる モブプロって効率いいの? Agile Japan Tokyo 2018 基調講演「モブプログラミングと”フロー”の力」Woody Zuill 氏 https://www.agilejapan.org/2018/session/01_keynote.pdf
アドテク開発という複雑性の高い分野でプ ロの組織を作るために、モブプロを通してナ レッジを共有し合うことはとても効果的。 まとめ
ご清聴 ありがとうございました!