😈

新卒エンジニアが感じたGitHub Copilotの光と闇

に公開

はじめに

自己紹介

こんにちは、ktmage と申します。ポート株式会社に2025年新卒のバックエンドエンジニアとして入社しました。

2ヶ月の研修を経て、6月から就活会議に配属され、Ruby / Ruby on Rails を中心としたスタックで開発を行っています。現在の業務では、主に会員登録に関連する機能やABテストの実装を担当することが多いです。

この記事を書くことになった経緯

社内の取り組みで技術ブログを書くことになりました。私のような新卒も例外ではなく、同期のエンジニアもClaude Codeに関する記事を複数執筆しています。

https://zenn.dev/port_inc/articles/6194a718ea6ffa
https://zenn.dev/port_inc/articles/4a8ec7d777be42
https://zenn.dev/port_inc/articles/6e13db84b6a99b

弊社はAI活用に積極的な企業で、AIを活用した生産性向上の取り組みに力を入れています。

私も普段の業務では GitHub Copilot を活用しており、この機会にAIを活用する上で 考えたこと意識したこと をまとめてみようと思いました。

この記事で伝えたいこと

本記事は実際の業務でどのようにAIツールを使っているか、そして使う上で何を大切にしているかについて書いています。

新卒エンジニアという立場だからこそ、AIツールと共に成長していく過程での気づきや迷いをリアルタイムで共有できると考えており、AIツールを使い始めた新卒・若手エンジニアの方 や、そのマネジメントをする立場の方 にとって有用なものになれば嬉しいです。

実際にこう使っている

新卒エンジニアとして業務でAIツールを使う中で、どのような場面でどう活用しているかを紹介します。

調査・情報整理補助

実装にあたり調査を行う場合、広範な情報収集や整理をCopilotに補助させることは有効です。

具体的には、コードベース全体から関連する情報を収集したり、MCPサーバーを使って社内ドキュメントから調査したり(弊社では Kibela というサービスを利用して社内ドキュメントを検索・整理しています)、ghコマンドを使ってGitHub上の情報を収集したりしています。(GitHub MCPの話はここでは触れません)

例えば、新しいissueにアサインされた際、Copilotに以下のように依頼しています

issue #123 にアサインされました。このissueに関連する以下の情報を調査して、レポートにまとめてください:
- Kibelaの社内ドキュメントで関連する仕様や設計資料
- コードベース内の既存の類似実装
- 今回の実装で影響を受けそうな部分(修正が必要なファイルや関連する機能)

Copilotは複数の情報源を横断的に調査し、構造化されたレポートとしてまとめてくれます。

手動で各所を調べて整理していたら 1時間以上 かかるところが、10分程度 で完了することもあります。特に、「どこに何があるか分からない」状態から始める時に、多くの情報を集めて整理してくれる点が有効です。

具体例

普段はこのようなprompt.mdを使って調査を依頼しています

research.prompt.md
---
mode: agent
---

## 入出力
- 入力: 調査依頼
- 出力: 調査結果、レポート

## Kibela

- Kibelaは開発部のナレッジ共有ツールです。
- Kibelaには専用のMCPサーバーを利用してアクセスします。

## GitHub

- GitHubはチケット管理とソースコード管理に使用されます。
- 作業者がアサインされたチケットには作業の背景や要件が記載されています。
- GitHub CLI(gh)を利用してアクセスしてください。

## 優先度

Kibela, GitHub上での情報を元に、コードベースを調査するのが望ましいです。

## レポート

- 調査結果はマークダウン形式のレポートとしてまとめてください。
- 出力先は`.agent/outputs/reports/<調査対象>.md`です。

このような形で依頼すると、Copilotが自動で調査を行い、レポートを生成してくれます。

実装パターンが明確な場合の補助

実装パターンが決まっている場合、Copilotを活用することは非常に有効です。

私が担当したABテストの実装では、既存の実装パターンが明確に定義されており、社内ドキュメントとして実装手順が整備されていました。

また、検証箇所が違うだけで、ほぼ同じ実装が行われているケースが多く見られました。このような場合、Copilotに実装を補助させることで効率的に作業を進めることができます。

具体例

このように参照先を指定して実装を依頼しています。
資料の丁寧さにもよるかもしれませんが、ほぼ期待通りのコードを生成してくれます。

アイデア出し・ブレインストーミングの補助

実装方法や設計方針に悩んだ際、Copilotを使ってアイデア出しやブレインストーミングを行うことは有効です。複数の実装案を提示させてその中から最適なものを選択したり、設計方針に関する意見を収集したりしています。

具体例

命名のアイデア出しをする。

すぐ思いつく範囲では命名のアイデア出しがありそうです。

セルフレビュー

応用的に、Copilotを使った セルフレビュー を行うこともあります。

一度Copilotにコードをレビューしてもらうことで新人エンジニア特有の簡単なミスを事前に指摘してもらうことができ、レビューコストを削減できます。

余談ですが、GitHub CopilotではレビュワーにCopilotを指定する方法もCopilotのレビューを受けることができます。細かい運用や使い分けについては趣旨がずれるのでここでは触れませんが、興味がある方は調べてみてください。

https://docs.github.com/ja/copilot/how-tos/use-copilot-agents/request-a-code-review/use-code-review

PRの下書き作成・ドキュメント下書き作成

PR作成やドキュメントの下書きなどで下書きを生成する際には非常に有効です。変更内容をもとにPRの説明文を作成したり、ドキュメントの初稿を生成したりしています。

具体例

PR説明文の下書き作成の場合このようなプロンプトを作成する。

pr.prompt.md
---
mode: agent
---

## 入出力

- 入力: PR作成依頼
- 出力: PR説明文の下書きとなるマークダウンファイル

## タイトル

- IssueのタイトルをベースにしたPRタイトル
- 簡潔かつ具体的な表現

## 説明文

- `.github/PULL_REQUEST_TEMPLATE.md` をベースにする
- 過度な構造の追加を避け、シンプルに保つ

## 出力先

- `.agent/tasks/{task-slug}/pr_description.md` に出力

このように依頼する。

AIを使う上で大切にしていること

これまで紹介した使用例を通して、私がAIツールを使う上で大切にしている原則をまとめます。

エンジニアとして担保しなければいけないアウトプットの質をAIに依存しない

AIは非常に便利なツールですが、エンジニアとして最終的に担保すべきアウトプットの質については、AIに依存してはいけないと考えています。

例えば、調査・情報整理では、AIは情報の収集や整理を補助できますが、その情報が適切かどうかの判断や、情報から何を理解するかは自分で行う必要があります。

実装補助でも、AIが生成したコードが完全に正しいとは限らないため、適切にレビューして修正を加えることが重要です。

PRやドキュメントの下書き作成でも、AIが生成するのはあくまで下書きであり、最終的な内容の確認と補完は自分で行う必要があります。

つまり、AIはあくまで補助ツールであり、最終的な判断・レビュー・理解の責任はエンジニアである自分にあるという意識を持つことが大切です。

思考を停止せず、自分の知識と地続きにする

アイデア出しやブレインストーミングは、特に気をつけなければいけない場面です。AIにそれらしい案を出されると、つい思考を停止してしまいがちです。

そのため、以下のような問いを自分に投げかけるようにしています

  • 自分の知識に対して地続きになっているか?
  • なぜそのような結論になるのか理解できているか?
  • その結論に至るまでのプロセスを自分の言葉で説明できるか?

AIの提案を受け入れるにしても、それが自分の理解や知識の延長線上にあることを確認することが重要です。そうでなければ、それは 自分自身の成長 には繋がりません。

AIによって見えづらくなる自分の実力を、意識的に内省する

AIツールを使ってコーディングすることが当たり前になってきた今、自分の実力がどこまでなのか見えづらくなってきたと感じています。

例えば、実装がうまくいった時、それは 自分の理解が深まったから なのか、単に AIのサポートがうまく機能しただけ なのか。

逆に、うまくいかなかった時、自分の理解が不足している のか、AIへの指示の仕方が悪かっただけ なのか。こうした判断が曖昧になりがちです。

しかし、エンジニアとしての価値は常に相対評価だと思います。周りのエンジニアも同じようにAIツールを活用している中で、自分の能力を向上させない限り、この価値は高まりません。

だからこそ、これまで以上に 「自分の能力はどこまでなのか」意識的に内省する必要がある と考えています。内省を怠ると、自分の成長も感じづらくなり、何をすべきか迷走してしまいます。

AIによって実力が見えづらくなった今だからこそ、より丁寧に自分自身と向き合うことが大切だと思います。

まとめ

偉そうにいろいろ語ってきましたが、正直なところ、AIと人間の関係がこの先どうなっていくかなんて誰にもわかりません。たった1年前と比べても世界は大きく変わっていて、1年後はまた想像もつかない状況になっているかもしれません。

それでも、今できることは目の前のことに向き合うことだけです。AIツールを活用しながら、自分自身の成長も見失わないように。頑張るぞ〜!

ポート株式会社 エンジニアブログ

Discussion