PTAエンジニアアドテク×開発プロセス「オレシカナイトvol.8」レポートメディア統括本部の申と申します。オレシカナイトVol.8」のレポートと次回開催のお知らせをしたいと思います。(PTA)」が主催する技術者向け勉強会です。今回のテーマは「アドテク×開発プロセス」。効率的なプロセスは何なのか誰しもが悩むテーマではないでしょうか。当日は、当社が提供する「AbemaTV」や「AmebaDSP」の広告配信システムの開発プロセスにおいて、実際に導入したツールや成果を上げることができたプロセスについて紹介しました。恵)まずはAbemaTV星野より、スクラム開発におけるwrikeの導入と使い方について発表しました。テスト・リリースのスプリントという小さなサイクルを回し続け、生み出すプロダクトを最大化する開発方法です。スクラム開発を導入する前までは、各サービスのタスク管理についてメンバー間でキャッチアップができずうまく連携が取れないこともあり、その結果として、障害発生リスクや開発コストの増加、開発スピードの低下などの問題が発生していました。その解決策として、スクラム開発の導入とタスク管理ツール「wrike」を活用し始めることになりました。スクラム開発ではプロダクトバックログを作成し、タスクの優先度を定義します。wrikeを導入する前までは、全タスクの一覧が見れる場所がなくて、担当者がそれぞれタスクを発行していたために全体を俯瞰した優先度が付けづらい状況でしたが、wrikeのテーブルビューを利用し始めたことで、タスクの優先度を容易に指定できるようになりました。次にプロダクトバックログからスプリントバックログをチームのベロシティ分決めます。チームのベロシティは1スプリントで届けられる要求の量を指すため把握しておく必要があります。wrikeではプロジェクト単位でベロシティをグラーフで把握することができるため、状態のキャッチアップが可能です。スプリントバックログはサービス毎のフォルダーにスプリント単位でプロジェクトを作成し、プロダクトバックログに紐付けて管理することができるためサービス毎のスプリント状況を把握することができます。実装段階での進捗管理は、wrikeのボードビューを利用することで分かりやすいそうです。進捗管理以外にもディレクターと開発者をタスクのステータスの管理権限を付与して役割を明確にすることで、認識違いの防止、クオリティを担保することができたそうです。wrikeを使いこなして仕組み化することで、運用コストの削減だけでなく開発物のクオリティアップも実現することができたため、タスク管理ツール導入を検討している方がいれば、wrikeを検討していただくのも良いのではないかと思います。欣朋)次にメディア統括本部の林がモブプロの導入とそこから見えた効果や問題点について発表しました。モブプロとは、モブ(群衆)プログラミングの略で複数人で一つの画面を見ながら一緒に実装をしていく開発手法です。モブプロには役割がありPCを操作する人をドライバー、実装方法を指示する人をナビゲーターと呼びます。一般的にはドライバーはナビゲーターの指示に従い操作するだけでドライバーとナビゲーターは定期的に交代するというルールがありますが、チームで運用する際には役割関係なく意見があれば話して議論しながら進めたそうです。モブプロ導入の背景として、アドテクの特性上、必要とされるスキルやシステムのコンポーネントが多いため学ばないといけない知識が山ほどあり、一人で数多くのコンポーネントに対してキャッチアップすることは難しいことが挙げられます。そこで、コンポーネントを知っている人と一緒に開発することでキャッチアップすることが容易になるのではないかと思い、導入に至りました。モブプロで開発したメンバーからの声として、他コンポーネントの理解が進んだことや知らないコマンドやIDEのショートカットがわかること、疑問点をその場で有識者からレスポンスをもらえたことなどが、良かった点として挙げられました。その一方で、仕様や前提知識がある人がいないと進められないところやドライバーの切り替えタイミングの難しさ、指示を出す人の負荷が懸念として挙がっており、まだまだ改善の余地はあるようです。導入の目的としていたコンポーネントの理解促進につながった点は高く評価しており、アドテク開発という複雑性の高い分野でプロの組織を作るためには、モブプロを通してナレッジを共有し合うことは、効果的な手法のひとつだと話していました。亘)最後はAbemaTVの福永から加速成長しているAbemaTV事業の中でシステムリスクをどのように減らしているのかというテーマについて発表しました。2016年4月にサービスを提供開始したAbemaTVは、無料で楽しめるインターネットテレビ局として、現在の月間利用者数は1,100万という規模まで成長しています。システムの規模としては、GKE上で2つのリージョン、2つのGKEクラスタ、様々なDBとミドルウェアの計6つのLBを利用しています。リリース以降の約2年半という期間で急成長したAbemaTVではリスクをビジネスリスクとシステムリスクの2つに分けて可視化し、事業の計画を立てる際に可能性のあるリスクを先読みして事前に対策を立ててリスクを減らす対策をとってきました。ビジネスリスクとは、チャンネル数の増加や大型番組の配信など、視聴数の大幅な増加が見込まれる際に、事前にリスクとして整理しておくことを指します。パフォーマンス、監視、ドキュメント)をもとにスプレッドシートに各項目に対するプロダクトの状態と考えられる対応方法を整理したリスクの管理を指しています。ちなみにこれらの項目は「プロダクションレディマイクロサービス」という書籍から参考にしたそうです。二つのリスクを合わせて計画に反映する具体例として、視聴数の増加が予想される年末年始の特番配信に備えて、事前に負荷試験をすることで事故を防ぐことができたという実績や、広告商品の拡大を見越した広告配信設定の自動化の検討などが紹介されました。このようにリスクを先読みし対策を立てておけば事業のスピードが速くてもリスクを減らすことができるためより攻めの開発が可能になるとのことでした。LTLTでは、まず株式会社AJAの小越が「エンジニアマネージャーは何故増えないか」というテーマで発表しました。エンジニアマネージャーが増えない理由として、そもそもやりたいと思う人が少ないことや期待される役割が多くて大変であること、訓練や育成制度がないということが挙げられます。AJAでは、それぞれの領域において得意な人に役割を任せるよう業務を分担したり、日々の業務の中で必要なスキルを身につけられるよう育成制度を整えたそうです。つづいて、株式会社サイバーエージェントの久留が組織の課題解決のために実施した合宿について紹介しました。個人の役割と組織の方向性のベクトルがずれている課題感があり、課題解決に向けて、丸一日かけて全員が参加する合宿を行ったそうです。プロダクトや組織の価値観を考えたり、次のOKRをチームで考えたそうです。その結果、組織の方向性や価値観をきちんとメンバーに伝えられる機会となり、当事者意識の醸成やメンバー間の繋がり強固につながったそうです。オレシカナイトVol.8」のレポートでした。オレシカナイトでは、LTをしていただける方をゆるく募集していますので、ご興味のある方はConnpass経由でご連絡いただければと思います。今年最大の成功or失敗をテーマに開催します!どんな話が聞けるか楽しみですね!参加希望の型は以下のURLからエントリーください!https://cyberagent.connpass.com/event/108040/みなさまのご来場お待ちしております。