Skip to product information
A Developer's Guide to Generative AI
A Developer's Guide to Generative AI
Description
Book Introduction
From prompt writing to code review,
How to leverage AI throughout your development workflow!
A developer-tailored guide to using generative AI!


In the era of generative AI, the role of developers is rapidly evolving.
This book is a developer-tailored guide that presents effective practical application methods for various generative AI tools.
We present concrete strategies for integrating AI into each stage of development, including prompt writing, test generation, and refactoring, and compare and analyze the pros and cons of various tools and technology stacks, including ChatGPT, GitHub Copilot, and LangChain.
Beyond simple functional guidance, this book delves into the essential capabilities developers need in the AI ​​era, including a collaborative mindset, a critical perspective on code, and the use of AI as a learning tool.
It also suggests a direction for individuals and organizations to grow together.
This will be an essential guide for developers who want to work proactively even in the midst of technological change.
  • You can preview some of the book's contents.
    Preview
","
index
Chapter 1: Generative AI: Turning Engineering Conventions Upside Down

1.1 Change is happening ‘now’.
What to do now?
1.2 The Gap Between Excessive Expectations and Reality About Generative AI
1.3 Prompt engineering skills are not really that important.
1.3.1 Understand the exact meaning of terms
1.3.2 Stability and accuracy are at the core of prompt engineering.
1.3.3 Most engineering work is one-time.
1.3.4 Prompt Engineering Skills Are Not a Panacea
1.4 Developer jobs won't disappear.
1.4.1 Become a developer who can detect lies
1.4.2 Develop the ability to assign appropriate tasks to AI.
1.4.3 A Sense of Token Count
1.4.4 Maintain accuracy by adjusting the number of tokens
1.4.5 Become a Code Review Pro
1.4.6 Code Review at the Right Speed
1.4.7 Reviewing small amounts of code at a time
1.4.8 The True Value of Developers Tested in the Evolution of AI
1.5 AI Isn't Just for Exceptional Developers
1.5.1 AI is a powerful tool to help junior developers learn.
1.5.2 Knowledge acquisition through AI
1.5.3 Rapid Trial and Error Through Collaboration with AI
1.6 Let's make proper use of AI tools that support development.
1.6.1 Auto-Complete - Suggest small code snippets in real time
1.6.2 Interactive - Flexible problem solving support
1.6.3 Agent-type - Supports complex task processing
1.6.4 Use tools appropriately according to the situation.
1.7 Increase your team's competitiveness with AI
1.7.1 Differentiating Your Team with Custom AI
1.7.2 Is the codebase ready to be provided to AI?
1.7.3 Making the Most of AI Through Internalization
1.7.4 Growing Code at the Organizational Level
1.7.5 Are we introducing AI solely for the purpose of cost reduction?

Chapter 2: Controlling Generative AI with Prompts

2.1 System prompts and user prompts
2.1.1 Determining whether to reuse a business prompt
2.1.2 Creating quick and concise one-time prompts
2.1.3 Abstracting and Refinement of Reuse Prompts
2.2 Components of a Prompt - Information Strategies for Providing AI with Appropriate Information
2.2.1 Three Elements of Information Structuring
2.2.2 Specifying Conditions Using Bullets
2.2.3 Introducing constraints step by step
2.2.4 Modifying the Prompt
2.2.5 Responding to AI that Breaks Promises
2.2.6 Establishing Roles that Drive Expertise
2.2.7 Setting roles on the fly
2.2.8 Few-shot prompting
2.2.9 Zero-shot prompting
2.3 Context-dependent prompt optimization strategy
2.3.1 Balance between quality and quantity of prompts
2.3.2 Minimal prompts
2.3.3 Language Selection for Efficiency: Appropriate Use of English and Korean
2.3.4 Rapid repetition using native language
2.3.5 Refinement using English prompts
2.3.6 Delimiters for separating contexts

Chapter 3: Case Studies and Analysis of Prompts

3.1 React component creation prompt
3.1.1 The core prompt is simple: roleplay and basic instructions.
3.1.2 Increase accuracy: Instructions that accurately satisfy requirements
3.1.3 Controlling Prompt Output: Format Instructions
3.1.4 Specifying the technology to use: explicit conditions
3.1.5 Considering Usage in Programs: Instructions on Output Formats
3.1.6 The Core of Prompt Engineering
3.2 Prompt to create UI from screenshot
3.2.1 You are an experienced developer: Roleplay
3.2.2 Write every single line!: Instructions to emphasize context
3.2.3 Externally Provided Technology: Clear Conditions
3.2.4 Returning only complete code: Output format instructions
3.2.5 Designing specific prompts for specific purposes
3.3 SQL query creation prompt
3.3.1 You are a SQL expert: Roleplay and Instruction
3.3.2 Never do this: Strong prohibition instructions
3.3.3 Please note: Prioritize instructions
3.3.4 Cleaning up the output: Formatting
3.3.5 Specifying Commands Before Execution: Inserting Content
3.4 The Importance of Contextual Information in Prompts
3.5 Prompts for the universal agent
3.5.1 Are the prompts for the general agent helpful?
3.5.2 Prompt Design in OpenHands
3.5.3 Clear Competencies and Scope of Action: Role Establishment
3.5.4 Designing a Plan for Executing Multiple Tasks: Overall Planning
3.5.5 Organizing Task Dependencies: Ordering Tasks
3.5.6 Ensuring Consistency in Work Execution: History Management
3.5.7 Specifying the Agent's Behavior: Defining Actions
3.5.8 Balancing AI Thinking and Action: Flow Control
3.6 The Essence of Prompt Engineering
3.6.1 User prompts don't have to be elaborate.
3.6.2 Hints for improving prompt quality

Chapter 4: Prompt Strategies Suitable for AI Tools

4.1 Auto-complete AI tools
4.1.1 Minimizing User Prompts
4.1.2 Progressive Implementation Support
4.1.3 Quick response and maintaining focus
4.1.4 Reinforcing Instructions with Comments
4.1.5 Providing and Managing Information about AI Tools
4.1.6 Providing explicit code definitions
4.1.7 Pin important files for immediate reference
4.2 Conversational AI Tools
4.2.1 Flexible control of context
4.2.2 Support for various file formats
4.2.3 Accessing external information
4.2.4 Accumulation and reuse of history
4.2.5 Clear prompts
4.2.6 Early assessment of prompt quality
4.2.7 AI-based prompt generation
4.2.8 Automated Refactoring Using AI
4.2.9 Information design considering AI readability
4.3 Agent-type AI tools
4.3.1 Preliminary assessment of AI task suitability and adjustment of the level of granularity
4.3.2 Partial commission to agent
4.3.3 Finding the Tools You Need

Chapter 5: Coding Techniques for Collaborating with AI

5.1 Optimizing Work Units with AI
5.1.1 Code Optimization through Separation of Concerns
5.1.2 File organization considering AI efficiency
5.1.3 Work incrementally, starting with small code units
5.2 Improving AI Readability of Code
5.2.1 Naming with AI Collaboration in mind
5.2.2 Naming Strategy Optimized for Search
5.2.3 Proposals for appropriate naming of AI
5.2.4 Consistent variable naming
5.3 Coding Styles for Collaborating with AI
5.3.1 Explicitly provide a style guide
5.3.2 Customizing the Style Guide
5.4 Providing additional information to help AI understand
5.4.1 Documentation within standardized code
5.4.2 Add minimal comments
5.4.3 Conveying Intent Using Annotations
5.5 Maximizing AI's Knowledge
5.5.1 Choosing the right tool for your information needs
5.5.2 Open-ended questions that stimulate creativity
5.5.3 Specifying the number of ideas to encourage AI to generate ideas
5.5.4 Extracting Unknown Ideas from AI
5.5.5 Creating a Checklist for Idea Evaluation

Chapter 6: Development Methods that Unleash AI's Potential

6.1 Code Architecture Suitable for AI
6.1.1 Improving the Efficiency of AI Collaboration by Reducing Overlap
6.1.2 Code Separated from AI
6.1.3 Code design with expansion in mind
6.1.4 Applying Systematic Refactoring Techniques
6.1.5 Small Open Source Reimplementation
6.2 Improving Code Quality Using AI
6.2.1 Generating Unit Tests Using AI
6.2.2 Clear test conditions 25
6.2.3 Using Decision Tables for Comprehensive Test Design
6.2.4 Generating test code based on state transition diagram
6.2.5 Removing Unnecessary Tests
6.3 Using AI in Code Reading
6.3.1 Explaining code logic using natural language
6.3.2 Creating visual representations of complex logic
6.4 Using AI in Code Review
6.4.1 Performance Improvement Based on Big-O Notation
6.4.2 Code Optimization Using the BUD Framework
6.4.3 Assessing the suitability of data structures
6.4.4 Improving Code Quality Based on SOLID
6.4.5 Chain-of-Thought Prompting

Chapter 7: How to Maximize the Power of Generative AI

7.1 Development Organization Strategy to Enhance Competitiveness in the AI ​​Era
7.1.1 Establishing an open source culture in your organization
7.1.2 Inner Source Principle
7.1.3 Operation of Inner Source
7.1.4 Systematic code sharing within the organization
7.1.5 Clear Roles of Maintainers
7.1.6 Building an In-House Software Catalog
7.1.7 Strategies to Share Technology by Involving Management
7.1.8 Establishing a Secure Code Sharing System
7.2 Implementing AI-Era Software Development Methods at the Team Level
7.2.1 AI Mob Programming
7.2.2 AI Pair Programming
7.2.3 Sharing Prompt Usage Cases
7.2.4 Developing Talent to Lead the Use of AI Within the Organization
7.3 AI and Documentation
7.3.1 AI-Friendly Information Organization
7.3.2 Writing Implementation-Oriented Specifications
7.4 Optimizing Your Team's Technology Stack for the AI ​​Era
7.4.1 Selecting a Technology Stack Suitable for the AI ​​Era
7.4.2 Improving information portability
7.4.3 Security Measures for AI-Generated Code
7.5 Evaluation of the Effects of Generative AI Introduction
7.5.1 Developer Experience
7.5.2 Evaluating the Development Process with Four Keys
7.5.3 Evaluating Developer Experience with the SPACE Framework
7.5.4 Evaluation of the Introduction of Development Support AI Tools
7.5.5 Assessing the Value of Tool Implementation

Chapter 8: Tips for Leveraging AI in Development

8.1 Mastering the Editor and Terminal
8.1.1 Removing unnecessary information from the editor
8.1.2 Utilize automatic license verification
8.1.3 Using the Editor Integrated Terminal
8.1.4 Using Help Information to Prevent Hallucinations
8.1.5 Improving commit message quality by leveraging differences in change history
8.2 Handling data freely
8.2.1 Support for generating regular expressions using AI
8.2.2 Recognizing various date formats
8.2.3 Creating POSIX CRON format
8.2.4 Special Data Format Conversion
8.2.5 Classifying Unstructured Data Using AI
8.2.6 Improving Data Preprocessing Efficiency
8.3 AI Techniques for Rapid Web Development
8.3.1 SEO Improvement Suggestions
8.3.2 Accessibility Assessment
8.4 How to Use Essential Tools When Collaborating with AI
8.4.1 Identifying Change Points Using the diff Command
8.4.2 Building and Using the Prompt Library
8.4.3 Convert to AI-friendly Markdown
8.4.4 Creating AI-Readable Diagrams with Mermaid
8.4.5 AI Readability of Complex Diagrams Using PlantUML

Chapter 9: Leading the AI ​​Era

9.1 Leveraging AI to Accomplish More
9.2 Sharing skills and knowledge and growing together within the organization
9.3 'Curiosity' is the driving force of developers.

Appendix A Practice Guide
","
Detailed image
Detailed Image 1
","
Into the book
Generative AI goes beyond being a software development tool; it's deeply ingrained in how we work, like a real-world colleague.
As its role expands across various development areas, from automatic code generation to test writing and refactoring, I feel that the skills required of developers are also rapidly changing.
This book provides clear direction on what we need to prepare for in this changing climate.

What struck me most while translating this book was that the advancement of AI actually highlights the importance of human intention, judgment, and collaborative abilities.
While the ability to quickly and accurately implement code was once a requirement, today's era demands a more comprehensive thinking ability that allows you to grasp the essence of the problem, design the structure, and understand the context of the business and organization.

This book emphasizes recognizing AI as something we must collaborate with, rather than simply as an automation tool.
It goes beyond a simple technical introduction, offering practical, immediately applicable advice on topics like prompt design, test automation, code review, and knowledge sharing, as well as a mindset for working effectively with AI.

The introduction of generative AI means a change in the way we work, not a change in tools.
I hope this book will serve as a helpful compass for many developers struggling to find their way in a new environment.
--- From the translator's note
"]
GOODS SPECIFICS
- Date of issue: September 17, 2025
- Page count, weight, size: 376 pages | 152*225*16mm
- ISBN13: 9791140715831

You may also like

카테고리