20250528 AWS Startupイベント登壇資料:AIコーディングの取り組み
by
Hanse Kim
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
シェアLT AIコーディングの取 り組み
Slide 2
Slide 2 text
C O N T E N T S © INGAGE Inc. All Rights Reserved. 1. Cursor導入 2. MCPの活用 3. 効果 4. 生産性...3倍になった?
Slide 3
Slide 3 text
© INGAGE Inc. All Rights Reserved. キムハンセ 株式会社インゲージ Vue.js・Ruby on Railsエンジニア 開発生産性3倍プロジェクト リーダー 自己紹介 プライベートではバンドやってます🎸
Slide 4
Slide 4 text
No content
Slide 5
Slide 5 text
© INGAGE Inc. All Rights Reserved. お客様からのお問い合わせを一元管理するサービス
Slide 6
Slide 6 text
© INGAGE Inc. All Rights Reserved. 様々なツールに対応している
Slide 7
Slide 7 text
01 © INGAGE Inc. All Rights Reserved. Cursor導入
Slide 8
Slide 8 text
© INGAGE Inc. All Rights Reserved. 主な導入理由 :企業の使用事例が多い →情報を得やすい、リスク管理しやすい その他よかったポイント - Teamプランからはプライバシーモードが適用され、コードを学習しない - VSCode基盤のため乗り換えやすい Cursor
Slide 9
Slide 9 text
© INGAGE Inc. All Rights Reserved. 約3ヶ月の間10名のエンジニアに試験運用 生産性3倍チームを中心に、セキュリティの検証を行いながら、 ルール設定やベストプラクティスの確立を行っている 社内半分くらいが導入
Slide 10
Slide 10 text
© INGAGE Inc. All Rights Reserved. CopilotのようにTabキーで AIにサジェストしてもらったものをどんどん入れられる エージェントと並ぶCursorのメイン機能 Cursor Tabが有能
Slide 11
Slide 11 text
© INGAGE Inc. All Rights Reserved. .cursorrulesをプロジェクト内に作って、必要な情報を渡すことができる Cursorは全コードにインデックスを貼る仕組みがあるため、 ルールがなくてもかなり精度の高い回答が返ってくる ルール
Slide 12
Slide 12 text
© INGAGE Inc. All Rights Reserved. - Cursorの設定から不要モデルのチェックを外す必要あり - アップデート時に新しいモデルに自動でチェックが入ることがある セキュリティ(一般ユーザー) deepseekなどのモデルも選択肢としてある
Slide 13
Slide 13 text
© INGAGE Inc. All Rights Reserved. - 生成AIは古いバージョンのライブラリーを推薦することがある - package.jsonで最新バージョンを使っているか見てくれる拡張機能導入 - .cursorrulesにライブラリーバージョンを最新にするように書いておく - セキュリティに問題がある拡張機能・MCPを使わない - コードが学習されてしまう可能性があるため - MCPはある程度公認されているものを使う セキュリティ(一般ユーザー)
Slide 14
Slide 14 text
© INGAGE Inc. All Rights Reserved. - 不正な言語モデルの使用 - Cursorのダッシュボードで、ユーザーがどんなモデルを使用しているか確認可能 - 安全なMCPの選定 セキュリティ(管理者)
Slide 15
Slide 15 text
02 © INGAGE Inc. All Rights Reserved. MCPの活用
Slide 16
Slide 16 text
© INGAGE Inc. All Rights Reserved. MCP(Model Context Protocol) https://www.anthropic.com/news/model-context-protocol
Slide 17
Slide 17 text
© INGAGE Inc. All Rights Reserved. Langchainでもすでにツールはあった
Slide 18
Slide 18 text
© INGAGE Inc. All Rights Reserved. Cursorはいいホスト LLM ツール Thought Action Observation どんなツールを使う? ツール呼び出し ツール呼び出した結果 cursorが担ってくれる MCPをつけるだけ
Slide 19
Slide 19 text
© INGAGE Inc. All Rights Reserved. MCPは全てをハブのように繋ぐ https://medium.com/@jefferylee73/mcp-%E7%A0%94%E7%A9%B6%E7%AD%86%E8%A8%98-ead850439603
Slide 20
Slide 20 text
© INGAGE Inc. All Rights Reserved. 要するに、USB Type Cみたいな存在です
Slide 21
Slide 21 text
© INGAGE Inc. All Rights Reserved. CursorがMCPを取り入れてから流行り始めた https://trends.google.com/trends/explore?q=mcp&hl=ja cursorがサポートし始める
Slide 22
Slide 22 text
© INGAGE Inc. All Rights Reserved. PostgreSQL MCP → 一番効率向上を体感しやすい スキーマ構造、レコードを元に回答してくれるのでかなり精度が高まる LINE MCP →テストメッセージ送信などに使える ドキュメントを見ながらcURLを作る手間が省ける Docker Desktop MCP →コンテナの中で打つコマンドがある場合、Dockerを使ってくれる 他のツールとの拡張性が高い 使えたMCP
Slide 23
Slide 23 text
© INGAGE Inc. All Rights Reserved. Figma MCP - MCPの動きとしては素晴らしい - ただ、Figmaの命名を開発上での単位に合わせて作っていないと見た目だけが同じ ものが出来上がってしまう Vue Developer Tool MCP - Docker内のクライアントにうまくつながらず - フロントエンドに慣れていない人が使えたら便利そう - AIとの会話でコンポーネントをすぐ見つけることができる 試したMCP
Slide 24
Slide 24 text
© INGAGE Inc. All Rights Reserved. GitHub Wikiの内容をローカルにCloneし、 markdownファイルを読み込むMCPサーバー開発 →今まで運用してきたwikiをMCPで使うことができる 自作MCPサーバー
Slide 25
Slide 25 text
03 © INGAGE Inc. All Rights Reserved. 効果
Slide 26
Slide 26 text
© INGAGE Inc. All Rights Reserved. モノレポだったプロダクトからマイクロサービス化している途中 ゼロから1を作るのに強いため、マイクロサービスの開発に向いている 初見の人でもAIと会話することですぐ追いつけられる But, 別レポの内容を取り入れるための努力は必要 (MCPで対応可) バイブコーディング
Slide 27
Slide 27 text
© INGAGE Inc. All Rights Reserved. Claudeなどのツールを使うと会話の制限があったりする →オチを考えながら進めると脳のリソース使う 一つのサービスに入ることで多様なモデルが使える 月6000円でこれができる! 生成AIチャットとしての活用
Slide 28
Slide 28 text
© INGAGE Inc. All Rights Reserved. i18nでTypeScript、YAMLファイルの中に “// 要翻訳”のようにコメントを残したものを翻訳する仕組み 機械翻訳だと、一般的な意味での翻訳はできるが、 プロダクトの文脈を理解していないことが問題だった 直接翻訳した時代に比べ、生産性10倍増加! 翻訳
Slide 29
Slide 29 text
© INGAGE Inc. All Rights Reserved. CursorはVSCodeからforkしているものであるため、 JetBrainのユーザーは乗り換えなければならない JetBrainでもWindSurfの拡張機能などは使えるものの、 ネイティブに繋がっていないため限界がある JetBrain使えない 🥺
Slide 30
Slide 30 text
© INGAGE Inc. All Rights Reserved. - プロダクトが大きくなるとインデックスにメモリが使われる - 間違ったコードがレビューで見つからなかった時の手戻り - セキュリティ面を完璧には防げない 副作用
Slide 31
Slide 31 text
04 © INGAGE Inc. All Rights Reserved. 生産性、3倍になった...?
Slide 32
Slide 32 text
© INGAGE Inc. All Rights Reserved. 一人で3人分の生産性を生み出すことが目標 しかし、客観的数値ではわかりにくい - 一番わかりやすいcommitとPRの数だけでは生産性の指標にならない - タスクも絶対的な単位ではない 生産性の指標は?
Slide 33
Slide 33 text
© INGAGE Inc. All Rights Reserved. コミット数
Slide 34
Slide 34 text
© INGAGE Inc. All Rights Reserved. - フロントエンドの方が使用回数が多い - フロントエンド開発者はCursor Tabの使用回数が圧倒的に多い - 使われた言語はRubyが一番多い - 効率はバックエンドの方が高い? ポジションによってそれぞれ
Slide 35
Slide 35 text
© INGAGE Inc. All Rights Reserved. サジェストの受け入れ率は50%を上回る
Slide 36
Slide 36 text
© INGAGE Inc. All Rights Reserved. 3倍にはなっていないな... 🧐
Slide 37
Slide 37 text
© INGAGE Inc. All Rights Reserved. 実際の開発に大きな割合を占めているものは? - コードレビュー - 動作テスト → Devin・Copilot・Claude Codeなどを活用する 3倍にするためにはどんなことが必要?
Slide 38
Slide 38 text
© INGAGE Inc. All Rights Reserved.