技術本部 Strategic Products Engineering Unit の P3 です。 拠点は京都の Sansan Innovation Lab というオフィスになります。
Sansan では 2023 年 4 月下旬より、利用希望者に向けて GitHub Copilot の導入を開始しました。 導入から約3ヶ月が経過したタイミングで、利用状況の振り返りを行ったのでその内容を本記事で公開します。
GitHub Copilot の利用状況
調査を実施した 2023 年 7 月末時点で GitHub Copilot のアクティブアカウント数は約 220 でした。 エンジニアであれば誰でも Slack で申請フローをあげることで利用を開始できる運用としています。
Copilot を使っている環境の比率
これはアクティブユーザーが最後にどんな Editor で Copilot を使ったかの分布です。 グラフの文字が小さくて申し訳ないですが...グラフの通り VSCode と JetBrains 関連が大半を占めている結果となりました。 ちなみに JetBrains IDE の内訳はこれなのかなと思っています。
Accept Rate
Copilot が推薦した内容をどれだけユーザーが採用したかの内容です。 GitHub に依頼して出してもらったもので、このダッシュボードには下記の注釈がありました。
- 完全に承認されたもののみが含まれ、部分的に承認されたものはこのダッシュボードには含まれません
- 特に指定がない限り、このビューにはVSCodeエディタのテレメトリのみが含まれています
- 承認率 (Accept Rate) = Copilotでの承認されたプロンプト / 表示されたプロンプト
- 承認されたコードの行数 = ユーザーによって承認されたコードの行数 (完全に承認されたもののみ)
注釈 2 つ目にあるように VSCode に限定された集計とのことなので VisualStudio & IntelliJ IDEA 勢を入れるともう少し上がるのではないかと思います。 (弊社の主力プロダクト Sansan は C# で Visual Studio での開発、 Bill One は Kotlin で IntelliJ IDEA での開発をしているエンジニアが多い)
言語別のAccept Rate
Copilot を利用した言語毎の採用状況です。現場では色んな言語で Copilot を利用しているようです。数が多すぎたため Accepted Lineの数が100行以上あったものに絞っています。 学習効率の良い開発言語が上位に並んでいるようです。今後の開発言語選定の一助になるかも知れませんね。
GitHub Copilot 利用に関してのアンケート
利用者に対してアンケートを実施しました。画像多めですが参考までにどうぞ。 5段階の回答は数字が大きいほど満足度が高い、という見方になります。
GitHub Copilot利用背景について
あなたの職種を教えてください
一週間の中で、コーディングを行った日数を教えてください
一週間の中で GitHub Copilot を利用した日数を教えてください
一日の仕事の中でコーディングに費やす時間を教えてください
GitHub Copilot の利用で、 一日あたりどれくらいの時間を節約できたと感じますか?
GitHub Copilotを使用することでより生産的になったと感じますか?
今後もCopilotを利用したいと思いますか?
GitHub Copilot利用のメリットについて
GitHub Copilotを使用するとコーディング時のイライラが軽減される
GitHub Copilotを使うことで仕事に充実感を感じられるようになった
GitHub Copilotを使用することで繰り返し作業をより迅速にこなすことができるようになった。
GitHub Copilotを使うことでより満足度の高い仕事に集中できるようになった
GitHub Copilotを使用することでより早くタスクを完了できるようになった
GitHub Copilotを使用することでフロー状態(作業に没頭し集中できる状態)に入りやすい
GitHub Copilotを使用することで検索にかかる時間が短縮された
GitHub Copilotを使用すると繰り返し作業に費やす精神的な負担が軽減された
おわりに
アンケートの回答については個々人の感覚によるところが大きいと思いますが、節約した時間数を見てみると費用対効果はそれなりにあると見ています。 ゼロから作るようなクリエイティブな業務にはまだ活用は難しい部分もあるようですが、煩雑な作業の単純化やそれにおける精神的負荷の軽減には寄与しており、弊社は今後も継続活用していく予定です。
今後もCopilotを利用したいと思いますか?
の質問についてはその理由も集めたのですが、多くの回答が Developer Experience の向上を体感している内容となっていました。一方で提案されたコードの妥当性の精査や期待しないタイミングでコード提案されて集中力が削がれるなど、少数ではありますがネガティブな声が出ていたことも事実です。月次でアクティブユーザーの ON / OFF は行えるので、うまく活用できる人が活用事例を共有するなどして、開発業務全体の生産性向上につなげていきたいと考えています。
GitHub Copilot はエンジニアにとってまだ Must な機能とまでは言いきれないがコストを掛けるメリットが十分ありそうです。 GitHub Copilot 自体もこの先アップデートしていくでしょうし、エンジニアがより本質的な業務に向き合えるよう、今後もうまく活用していきたいと思います。