書籍情報
書籍名: コード×AI ソフトウェア開発者のための生成AI実践入門
著者: 服部 佑樹
著者について
GitHubのシニアアーキテクト、InnerSourceCommonsの副会長。開発者体験の向上や生成AIの活用に深い知見を持つアーキテクト。生成AIツールの導入、InnerSource(OSSの手法を社内のクローズドソフトウェアに適用する手法)に詳しい。
著者の他の著作
- copilot-patterns - AI-Native開発のベストプラクティス集(GitHubリポジトリ)
著者リンク
読書動機
1. 生成AIの効果的な活用方法の習得
生成AIについて、なんとなく使っているだけで効果的に使えていないため。現状、エラーが発生したときにしか活用できていない状況を改善したかった。
学習メモ
学んだこと
1. 変化は「今」起こっている(p.5)
エンジニアに求められるのは、単なるコーディングスキルではなく、問題解決能力や創造性。生成AIは表現や手段の改善に優れているが、責任を伴う判断は依然として人間の役割。
2. 広義のプロンプトエンジニアリング(p.8)
広義のプロンプトエンジニアリングは、生成AIへの入力全般に対するアプローチを指し、人間の論理的思考能力や言語能力、専門知識まで含めた幅広いスキルを指す。狭義のプロンプトエンジニアリングは、AIとの対話を最適化する具体的なテクニックに焦点を当てる。
3. エンジニアタスクの多くは1点もの(p.14)
開発現場では創造性を要する一度きりのタスクが多い。タスクの多様性と一回性を考えると、完璧なプロンプトを作る必要はない。即興で使い捨てのプロンプトを生み出し、AIとの対話を通じて出力を調整する能力が重視される。
4. AIに最適なタスクを割り当てるスキルを磨く(p.23)
効率的なレビューのためには、タスクを人間が確認しやすいサイズに分割することが鍵。たとえコード量が少なくとも、既存システムとの整合性、依存関係、影響範囲の考慮が不可欠。
5. AIに与えられるコードベースの準備(p.53)
組織の成功を左右する3つの質問:
- 組織はAIに与えられるコードベースやドキュメンテーションを用意できているか
- それらのコードや情報は、AIが理解しやすい形で整理されているか
短期的にはRAG技術を用いたナレッジベースの活用が有効。中長期的には、組織のコードや専門知識を活用した自社専用の開発支援AIツールの開発やファインチューニングが重要。
6. 内製化によるAIの最大限の活用(p.55)
ナレッジベースの構築、AIのためのコードベース整備、AIプラットフォーム化が重要。プロジェクト間で共有可能な知識やベストプラクティスをwikiで整理し、コーディング規約を定め一貫性のあるコードスタイルを維持する。
7. AIをコストカットだけの目的で導入しない(p.59)
社内での技術資産を共有する取り組みは、即座の効果は見えにくいが、中長期的には組織の知識共有やイノベーション能力を向上させる。AIの導入には短期的な生産性向上と長期的な価値創造のバランスが求められる。
8. プロンプトの再利用か使い捨てかを見極める(p.65)
大切なのは、プロンプトを再利用するか使い捨てるかの判断。この区別は業務効率に大きく影響する。
9. 情報アーキテクチャ(p.73)
情報を整理し、構造化し、分類し、見やすくするための設計手法。
10. 履歴管理の重要性(p.127)
履歴管理はフロー設計において非常に重要。過去のアクションを参照することで、同じ思考や行動の繰り返しを防ぎ、効率的なタスク実行を可能にする。
11. ユーザによるプロンプトの最小化(p.139)
AIにわかってもらうために真面目に長い時間をかけて丁寧にプロンプトを書くべきではない。5〜10行もの長いプロンプトは必ずしも有効な手段とは限らない。
12. プロンプトの明確化(p.154)
どんな文脈で何のファイル/コードを読んでもらうのかを自ら指定し、意図をより明確に伝えることが重要。
13. AI可読性を考慮した情報設計(p.163)
ExcelやWordといった形式のファイルを避け、ExcelはCSVやYAML、文書はMarkdownで書くといった対策が考えられる。
14. 複雑なロジックの視覚的表現生成(p.234)
MermaidやPlantUMLを活用したコードの可視化が有効。コードのテキスト解説といっしょに出力してもらうことで、より早くて効果的なコーディングが可能。
15. AI時代のソフトウェア開発手法をチームで体得する(p.268)
AIの特性と限界への理解は欠かせない。AIが生成したコードを鵜呑みにせず、批判的な目を持つことが求められる。AIから得た知見を継続的に共有することが重要。
16. プロンプトのユースケース共有(p.271)
プロンプト作成の本質は単なるコピーアンドペーストではない。どういった問題に対してどのようにアプローチするのかという「発見」の共有が重要。
感想
全体的な印象
浅く広く学べる本だと思いました。生成AIの全体像を把握しきれていない自分にとっては良い本でした。特に、生成AIをどうやって組織に適用していくのかについても言及されていたのが個人的には良いポイントです。単なるツールの使い方ではなく、AI時代のソフトウェア開発に求められる本質的なスキルと組織戦略について体系的に学ぶことができました。
実践できること
短期
- Claude Desktopの共有機能を使って社内でAI活用事例を共有する
- プロンプトの履歴管理を開始する
- プロンプトを使い捨てるか再利用できるか考える習慣を持つ
中長期
- 組織のナレッジベースを構築し、AIが参照できる形で整備する
- コーディング規約を定め、AIが理解しやすい一貫性のあるコードスタイルを維持する
- チーム内でAI活用の知見を継続的に共有する仕組みを作る
定量評価
注意: このセクションは読書直後ではなく、1年後など実際の効果が見えてから記入してください。数値化できない学びの価値(思考力、創造性、教養など)も重要です。見積もりは保守的に行い、過度に楽観的な数値は避けてください。
スキル・知識の評価
| 評価項目 | 評価 | コメント |
|---|---|---|
| 長期的な有用性 | 2 | 分野が分野なので5年後も使えるとは思えない |
| 実践のしやすさ | 5 | エンジニアの場合ChatGPTを使っていると思うので、すぐ応用できる |
| 汎用性 | 4 | 言語、上流下流問わず使えるので汎用性は高い |
スキルスコア: 11/15点
経済的インパクト
時給の計算: 年収 ÷ 2,000時間で計算。参考: エンジニア平均¥3,000(年収600万円相当)
投資コスト
| 項目 | 数値 | 根拠・計算 |
|---|---|---|
| 書籍価格 | ¥3,300 | 書籍の購入価格 |
| 読書時間 | 6時間 | 通読 + 実践 + ノート作成の合計時間 |
| 読書時間コスト | ¥18,000 | 6時間 × ¥3,000/時間(エンジニア平均時給) |
| 総投資額 | ¥21,300 | 書籍価格 + 読書時間コスト |
リターン
後で書く!
| 項目 | 数値 | 根拠・計算 |
|---|---|---|
| 時間削減効果 | XX時間/月 | 作業効率化で削減できる時間 |
| 時間削減の金額換算 | ¥XXX,000/月 | 削減時間 × 時給 |
| コスト削減効果 | ¥XXX,000/年 | インフラコスト削減、外注費削減など |
| 年間経済効果 | ¥XXX,XXX | 時間削減 + コスト削減の合計 |

