Preface
About This Book
This book is about a fundamental shift in what software engineers actually do.
For most of the history of the profession, the primary bottleneck in software development was writing code: turning a clear understanding of the problem into a working implementation. Tools, languages, and frameworks were all designed to help engineers write code faster, more reliably, and with fewer defects. Being a great engineer meant, in large part, being a great coder.
That bottleneck is moving — fast.
AI agents can now write syntactically correct, contextually relevant code from a natural language description. They can scaffold entire systems, generate test suites, refactor legacy code, and explain unfamiliar codebases in seconds. The implementation layer — once the core of the engineer’s craft — is increasingly automated.
What remains irreducibly human is everything that surrounds implementation: understanding the problem deeply, specifying intent precisely, verifying that what was produced is actually correct, and refining until it is truly right.
This is the new loop of software engineering in the agentic era:
SPECIFY → GENERATE → VERIFY → REFINE
Specify — Define the problem with precision. Decompose ambiguous requirements into clear, agent-sized tasks. Write specifications that leave no room for misinterpretation.
Generate — Delegate to AI agents with confidence. Provide the right context, constraints, and success criteria. Let agents handle the implementation.
Verify — Review outputs critically and systematically. Test assumptions. Catch hallucinations, edge cases, and silent failures before they reach production.
Refine — Iterate. Improve your specifications, your prompts, your verification strategies. Each cycle makes the next one faster and more accurate.
This loop replaces the old SDLC — not by discarding its principles, but by redistributing where human intelligence is most needed. The engineer moves up the abstraction stack: from implementer to architect, from coder to critic, from builder to director.
This book teaches that move. It is not a book about which AI tools to use or how to write clever prompts. It is a book about the new skills that matter when coding is automated: problem decomposition, system thinking, critical verification, and judgment under uncertainty. Skills that compound. Skills that do not expire when the next model is released.
Who This Book Is For
Primary readers:
- Software engineers transitioning from traditional to AI-assisted workflows who want sustainable, tool-independent skills
- Advanced undergraduate and graduate students in software engineering
- Senior developers and tech leads adapting team practices
Secondary readers:
- Engineering managers redefining development processes
- Researchers in software engineering
What you need to bring:
- Comfort with at least one programming language (examples are in Python)
- Familiarity with basic programming concepts: functions, classes, loops, conditionals
- Some exposure to version control (git) and the command line
What you do not need:
- Prior experience with AI coding tools
- A background in machine learning or deep learning
- Advanced knowledge of Python — the examples use standard library features and widely-adopted packages
How to Use This Book
This book is written for a 12-week university course at Monash University, but it is structured so that it can be used in several ways.
Path A: 12-Week Course (Recommended)
Follow the chapters in order, one per week. Each chapter builds on the previous and contributes one milestone to the running course project — a Task Management API that grows from a scope statement (Week 1) to a complete AI-native system (Week 12).
Weeks 1–4: SE Foundations (Chapters 1–4)
Weeks 5–8: AI-Native Practice (Chapters 5–8)
Weeks 9–12: Security, Ethics, Productivity, Future (Chapters 9–12)
The project milestones at the end of each chapter are the primary assessment vehicle. Submit them on a weekly cadence and use peer review to compare approaches.
Path B: Practitioner Self-Study
If you are an experienced engineer who wants to develop AI-native skills specifically, start with Chapter 5 (The AI-Native Development Paradigm) to calibrate where you are, then read Chapters 6–8 in order. Use Chapters 1–4 as reference when the foundations feel shaky, and Chapters 9–12 for the governance and strategy dimensions.
Recommended reading order: 5 → 6 → 7 → 8 → 9 → 10 → 1–4 (reference) → 11 → 12
Path C: Team Reference
If your team is adopting AI tools and you want to use this as a shared reference, the most immediately useful chapters are:
| Need | Chapter |
|---|---|
| Writing better AI specifications | 6 |
| Evaluating AI-generated code | 7 |
| Setting up agents for development tasks | 8 |
| Security review of AI-generated code | 9 |
| AI use policies and ethics | 10 |
| Measuring team productivity | 11 |
Disclaimers
All code examples in this book use Python. This choice is deliberate and transparent, not an endorsement.
This is not a sponsored book. No commercial relationship exists between the author or any other AI provider mentioned.
This book does not represent the views of Monash University. It is written in a personal capacity and is not endorsed by, affiliated with, or produced on behalf of Monash University or any other institution. Readers are responsible for applying the concepts and techniques described here thoughtfully and at their own discretion. The author accepts no liability for decisions or outcomes arising from the use of this material.
Contributions and Feedback
This book is a living document. Errors, outdated examples, and gaps in explanation are inevitable — and fixable.
If you spot a mistake, have a suggestion, or want to contribute an example, case study, or exercise, you are warmly welcome to do so. The source is open and maintained at github.com/awsm-research/agentic-swe-book.
- Report issues — open a GitHub issue with the chapter and page reference
- Suggest improvements — submit a pull request with a clear description of the change and why it helps readers
- Share your project — if you build something interesting using the techniques in this book, open a discussion thread; the best examples may be featured in future editions
All contributions are credited. No contribution is too small.
Associate Professor Kla Tantithamthavorn, Monash University, Australis 2026