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
サイバーエージェントのGitHub Copilot導入と 開発生産性
Search
Kurochan
September 12, 2023
Technology
54
52k
サイバーエージェントのGitHub Copilot導入と 開発生産性
【GitHub x サイバーエージェント共催】GitHub Copilotで変わる開発文化の現実
https://cyberagent.connpass.com/event/292982/
Kurochan
September 12, 2023
Tweet
Share
More Decks by Kurochan
See All by Kurochan
2026年の個人的テーマ: 「計算機を燃やせ🔥」
kurochan
1
90
つなぐ、届ける、変える- コンテンツ配信の最前線ト——ク
kurochan
0
120
サイバーエージェント流クラウドコスト削減施策「みんなで金塊堀太郎」
kurochan
4
3.1k
AWS Elemental MediaPackageと格闘🤼
kurochan
2
88
サイバーエージェントでのSlack活用事例 @ 2025
kurochan
5
200
15年入社者に聞く! これまでのCAのキャリアとこれから
kurochan
1
340
入門 電気通信事業者
kurochan
13
5.8k
AWS x さくらのクラウドのハイブリッドクラウドによる安価なフレッツ閉域網接続の実装
kurochan
9
6.1k
GoでTCP Proxyを実装してみよう
kurochan
1
1.3k
Other Decks in Technology
See All in Technology
プロポーザルに込める段取り八分
shoheimitani
1
670
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
210
Cosmos World Foundation Model Platform for Physical AI
takmin
0
980
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
480
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
1
170
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.6k
Why Organizations Fail: ノーベル経済学賞「国家はなぜ衰退するのか」から考えるアジャイル組織論
kawaguti
PRO
1
220
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
610
Agent Skils
dip_tech
PRO
0
140
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
270
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
240
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
170
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Between Models and Reality
mayunak
1
200
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
57
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
Java REST API Framework Comparison - PWX 2021
mraible
34
9.2k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
260
Transcript
サイ バ ーエー ジ ェントのGitHub Copilot導⼊と 開発⽣産性 株式会社サイバーエージェント CTO統括室
黒崎 優太 (@kuro_m 88 ) 【GitHub x サイバーエージェント共催】GitHub Copilotで変わる開発⽂化の現実
ࠇ࡚ ༏ଠ גࣜձࣾαΠόʔΤʔδΣϯτ AIࣄۀຊ෦ @kurochan @kuro_m88 αΠόʔΤʔδΣϯτ CTO౷ׅࣨ
普段の仕事 • AI事業本部にて⼩売企業のDXを⽀援をする事業をやっています • スマホアプリ開発 • データ分析基盤構築
インターネットゼミ • インターネットの勉強をするゼミ • 社内ゼミ制度 • サイバーエージェントの実験⽤ASであるAS 6 3 79
0 を運⽤しています
最近書いた記事 • サイバーエージェントのGitHub CopilotのAnalyticsデータを公開! 利⽤開始から約3ヶ⽉でエンジニアの⽣産性は向上したのか https://developers.cyberagent.co.jp/blog/archives/ 9
本⽇話すこと • サイバーエージェントとAI • GitHub Copilot全社導⼊まで • GitHub Copilot活⽤状況 •
開発⽣産性と向き合う
サイバーエージェントとAI
None
AI事業本部設⽴@2019年 https://www.cyberagent.co.jp/way/list/detail/id= 3
AI Lab • AI技術の活⽤に取り組む研究組織。2016年設⽴。 • Top 1 00 Global Companies
Leading in AI Researchにて⽇本4位、世界36位。 • 権威ある国際学会や論⽂誌において論⽂が多数採択。
AI Lab • 内製⽇本語LLMは130億パラメータまで開発を完了。プロダクト利⽤開始。 • 国内のAI技術発展に貢献するため68億パラメータのLLMを⼀般公開。
ChatGPTの事業活⽤ • 「ChatGPTオペレーション変⾰室」設⽴(4⽉上旬)
ChatGPTの事業活⽤ • マッチングアプリで「プロフィール添削AI」を提供(4⽉上旬)
ChatGPTの事業活⽤ • ⾃社LLM技術を利⽤した広告コピー⾃動⽣成(5⽉)
若⼿もAI事業を牽引 https://www.cyberagent.co.jp/way/list/detail/id= 8
GitHub Copilot全社導⼊まで
GitHub Copilotを使ったことがある社員が現れる • Slackのtimes(雑談チャネル)でCopilotを個⼈で使っている社員を発⾒ • 週末など、個⼈で使ってみている社員がじわじわ増えてきていた
⾃分のチームで使ってみてもらう(3⽉下旬) • まだ全社⽅針は定められていないが⼈を絞って複数部署で試験運⽤してみる • 肌感覚を得る & すぐにフィードバックしてCTO統括室で導⼊⽅針の判断 • ⾃分のチームであればコントロールが効きやすいという判断
Copilot以外にも⽣成AIツールの需要が(3⽉下旬) • 縛りすぎないが最低限は担保するガイドラインを急いで作る • CTO統括室+有志でガイドラインを策定して役員 & 法務レビュー • 各部署から協⼒者を募ることでおおよその⽅針を共有する
サイバーエージェントのセキュリティの考え⽅ • 体を守るために免疫は⼤切だが、免疫が強すぎるのも逆効果 https://www.cyberagent.co.jp/way/list/detail/id= 8
Copilot導⼊に向けて申請フローを整備する(4⽉上旬) • ⼤規模導⼊しているSaaS等(GitHub含)の請求管理をしているチームに これから起きることを相談 🚨🌊🏄 • GitHub Issueで申請してorg単位で有効化→個別のライセンス付与はorg ownerに権限委譲
⽣成AIガイドライン暫定ルールリリース!(4⽉中旬) • 各部署の有志の協⼒者のおかげでスピード感を持ってリリースできました • それぞれの部署の観点からの情報が集まってきたのがとてもよかった
⽣成AIガイドラインについて https://developers.cyberagent.co.jp/blog/archives/ 8
ガイドラインリリースに合わせてCopilot利⽤開始!(4⽉中旬) • 多くの社員の協⼒のおかげでスピード感を持って導⼊ができました🎉
GitHub Copilot活⽤状況
GitHub Copilot活⽤状況 • 以前の記事からさらにどう変化したのかもご紹介します! • 数値の注意 • Full Accept(Copilotの推薦をそのまま全て採⽤)のみの数字です。 •
VSCode以外の環境での利⽤状況は含まれていません。 • Copilot for Businessには個⼈のGitHubアカウントを紐づける利⽤形態のため、業務外 での利⽤のAnalyticsも⼀部含まれています。
GitHub Copilot活⽤状況(5/18-7/16)
GitHub Copilot活⽤促進 • 各部署で⾃主的に勉強会を実施 & 録画を全社共有
GitHub Copilot活⽤促進 • 各部署で⾃主的に勉強会を実施 & 録画を全社共有 • 半⽇で700回再⽣🎉 • 他部署も負けじと情報発信🔥
GitHub Copilot活⽤状況(7/17-9/4)
GitHub Copilot活⽤状況 • ユーザ数の変化 • 500ユーザ以上 → 800ユーザ以上: 60⽇で1.6倍に増加 ⤴
• 推薦を受け⼊れたコードの⾏数 • 3 . 2 K LoC/day → 6 . 0 K LoC/day: 6 0 ⽇で1.9倍に増加 ⤴ • 計測開始以降受け⼊れたコードの⾏数 • 49 0 . 4 K LoC / 1 10 day 💻
⾔語別 • サイバーエージェントの 技術スタックが現れているかも
黒崎のCopilotの使い⽅ • SlackのAPIを使ったbotを書いていた • ドキュメントに載っていない知識を前提にしたコードを提⽰してくれた
黒崎のCopilotの使い⽅ • SlackのAPIを使ったbotを書いていた • たまに誤ったコードも推薦されるので注意は必要
プログラミング初学者のCopilotの使い⽅ • ビジネス職でプログラミングを勉強している社員 • Copilotでコードを推薦してもらう → Copilot Chatに質問をする のループ •
分かるまで聞き直す、説明に⽭盾があれば指摘する のループでプログラミングを学習する • 先輩(orエンジニア)に今更聞きたくても聞けない質問のハードルを下げる効果もあり
GitHub org別(7/17-9/4) • サイバーエージェントでは組織やプロダクト等の単位でorgを分割している • GitHub org別のメトリクス • orgあたりの平均: 660
〜 910LoC / user
GitHub org別(7/17-9/4) • サイバーエージェントでは組織やプロダクト等の単位でorgを分割している • GitHub org別のメトリクス • orgあたりの平均: 660
〜 910LoC / user
GitHub org別(7/17-9/4) • サイバーエージェントでは組織やプロダクト等の単位でorgを分割している • GitHub org別のメトリクス • orgあたりの平均: 660
〜 910LoC / user
GitHub org別(7/17-9/4) • サイバーエージェントでは組織やプロダクト等の単位でorgを分割している • GitHub org別のメトリクス • orgあたりの平均: 660
〜 910LoC / user • ⾚枠のorgの平均: 828 2 LoC / user
GitHub org別(7/17-9/4) • サイバーエージェントでは組織やプロダクト等の単位でorgを分割している • GitHub org別のメトリクス • orgあたりの平均: 660
〜 910LoC / user • ⾚枠のorgの平均: 828 2 LoC / user • 明らかに突出しているorgがある • 2⼈しか居ないのでユーザを特定して話を聞かせてもらってみた
話を聞いてみた
オンライン診療プラットフォーム「TOIRO美肌院」
オンライン診療プラットフォーム「TOIRO美肌院」 • 制作したもの • 広告⽤ランディングページ • LINEチャット • 予約管理システム •
Amazon Chimeを⽤いた通話機能 • 医師向けの専⽤ページ • 開発チーム • 2名 • 開発期間 • 4ヶ⽉
Copilotを活⽤したコーディングのポイント • 実装を始める前にコメントで実装内容を記述 • 50-70点くらいの品質のコードが⽣成されることが多い • ⽣成されるまで待つ! • 100点のコードを期待しない •
⽣成されたコードをベースに実装を拡張していく • できる限り⾃分で書かない • ⽣成されたコードがベースなので追加の推薦も期待しやすい(はず)
Copilotを活⽤したコーディングのポイント
Copilotを活⽤したコーディングのポイント
Copilotを活⽤したコーディングのポイント
Copilotを活⽤したコーディングのポイント
Copilotを活⽤したコーディングのポイント • 実装を始める前に参考にしたいコードをコメントとして貼っておく • 参考にしたいコードの下にそれっぽい変数名を定義する • ⽂脈が⾮常に⼤切なので必要な情報を明確に渡す
Copilotを活⽤したコーディングのポイント
Copilotを活⽤したコーディングのポイント
Copilotを活⽤したコーディングのポイント
Copilotを活⽤したコーディングのポイント
Copilotを活⽤したコーディングのポイント
Chat GPTも活⽤する • よく使うプロンプトはクリップボードに
プロンプトの例
プロンプトのテンプレートをメンバに共有する • プロジェクトのドキュメントに記載して、メンバが活⽤することで チーム内のコードに統⼀感が⽣まれるとのこと • ⾶び道具的な使い⽅をしているのかと思ったが、とにかくCopilotやChat GPTにコードを書かせているだけだった • とはいえここまで数字に現れるとは思っていなかったので知⾒だった
開発⽣産性と向き合う
https://www.cyberagent.co.jp/way/list/detail/id= 5 開発⽣産性と開発体験の部署
⽣産性が上がると得られること • 作業量のXX%はAIツールの利⽤によって削減ができます🙋 • リリースサイクルが⾼速化されて1⽇あたりのリリース回数がYY回増えます🙋 • これまでの半分のチームサイズでサービス開発ができます🙋 • リリース後に発覚するバグの数がZ%減少しました☺
開発⽣産性と向き合う • 「⽣産性」だけを突き詰めていくとどうなるんだろう…?
「ムダ」から⽣まれるもの https://youtu.be/uN 6
技術は「いたずら」のような物から⽣まれる https://dnobori.cyber.ipa.go.jp/ppt/download/ 0 % 9
技術は「いたずら」のような物から⽣まれる https://dnobori.cyber.ipa.go.jp/ppt/download/ 0 % 9
技術は「いたずら」のような物から⽣まれる https://dnobori.cyber.ipa.go.jp/ppt/download/ 0 % 9
「作る経験はコピーできない。」
開発⽣産性と向き合う • ⽣成AIの活⽤でエンジニアの平均的な開発⽣産性はどんどん上がるはず。 • 短期的には⽣成AIの活⽤による⽣産性向上が武器になるはず。 • 中⻑期的にはそれが当たり前になるはず。 • ⼀⽅でソフトウェア開発は決まったものを⽣産する活動ではないはず。 •
⽣産性が向上した分をどこに投資するのか? • ソフトウェアエンジニアは何を⽣み出していくのか?
まとめ • サイバーエージェントがGitHub Copilotを導⼊するまでの流れ • スピード感とみんなの協⼒が⼤事! • GitHub Copilotを導⼊してどんな変化があったか •
メキメキ開発速度を上げている⼈も出はじめた! • 開発⽣産性との向き合い⽅ • ソフトウェアエンジニアとしてこの先⽣きのこるには… • つづきはパネルディスカッションで!
None