Developing Software with AI

About Course

AI can help developers move faster, but speed only helps when we can still understand, verify, and safely change the code we create.

Developing Software with AI helps software developers use AI as a coding partner while keeping human judgment, test-first thinking, code quality, and verifiable design at the center of the work.

This four-hour private team session focuses on the developer practices that make AI-assisted software development sustainable: specifying behavior with tests, evaluating code quality, emerging design incrementally, and using advanced testing techniques to keep business logic easy to verify.

By the end, your team will have a stronger way to collaborate with AI without surrendering responsibility for the design, behavior, or quality of the software.

Why Developers Need to Reorient their Skills

AI changes the mechanics of software development. It can generate code, suggest tests, explain unfamiliar APIs, propose refactorings, and help us explore alternatives quickly.

But AI does not remove the need for developer skill. It raises the value of that skill.

When AI can produce plausible code in seconds, developers need better ways to specify behavior, review design, recognize code quality, and verify that the system does what it should. The old question was often, “Can we make this work?” The new question is, “Can we understand, verify, and safely evolve what AI helped us create?”

The four topics of our focus are:

  • Test-First Development with AI
  • CREATE Code Quality
  • AI Development Practices 
  • Testing Techniques with AI

This course brings AI into some of the most important developer practices: test-first development, code quality, emergent design, and testing techniques. We look at how AI can support these practices without replacing the discipline that makes them valuable.

You will learn how to use tests as executable specifications, how to evaluate AI-assisted code through clear code qualities, how to support incrementally emerging verifiable design with AI, and how to build pure domain models with pluggable dependencies so important business rules remain easy to test.

The goal is not to let AI write more code.

The goal is to help developers build systems they can trust, explain, test, and change.

About the Instructor

David Scott Bernstein is a software developer, author, trainer, and founder of The Passionate Programmer. He has trained more than 10,000 professional developers in Agile engineering practices, Extreme Programming, test-first development, software design, and writing changeable code.

David’s work focuses on helping developers build software with greater clarity, responsibility, and confidence. His AI developer training brings the timeless disciplines of quality software development into the new reality of working with AI.

About AI Developer Essentials

AI Developer Essentials is a modular private training curriculum for software development teams learning to integrate AI into Agile development, analysis, design, and implementation practices.

The curriculum is not about replacing developer expertise with AI. It is about helping developers use AI while strengthening the human capabilities that make software understandable, verifiable, and changeable.

Next Steps

If your team is using AI to write or modify code, this course helps you build the practices needed to keep quality and judgment in the loop.

Schedule a private session and help your team develop software with AI in a way that remains testable, understandable, and safe to change.

Show More

What Will You Learn?

  • Use tests to specify behavior before relying on AI-generated implementation.
  • Apply test-first thinking as a steering mechanism for AI-assisted development.
  • Evaluate AI-assisted code using clear code qualities rather than vague preference.
  • Support incrementally emerging verifiable design with AI.
  • Keep business rules easier to test by building pure domain models.
  • Make dependencies pluggable so systems remain easier to verify and change.
  • Use hand-crafted mocks, shunts, and focused test doubles when they clarify behavior.
  • Strengthen your team's judgment around what AI can generate and what developers must still own.

Want to receive push notifications for all major on-site activities?