This seminar provides hands-on experience in proven engineering practices to help software developers work effectively in a team using any of the leading Agile development approaches. Participants will learn how to deliver high-quality, valuable, working software frequently while accommodating changing requirements. As leading Agile frameworks encourage developers to be more generalists than specialists, this seminar goes beyond just coding practices, providing participants with skills that will leverage the twelve Agile principles. Note: Agile Developer Boot Camp focuses on Agile engineering practices. Scrum/Agile processes are covered in our Scrum Boot Camp seminar.

To get the most out of the labs, we encourage you to bring a laptop with your actual development environment (an IDE/editor and a testing framework at minimum). We provide code in C#, Python, Ruby, and Java for you to choose. We're sorry we can't provide support or help for any tool-specific issues.

2-day seminar


  • Agile Development Foundations
  • Automated Testing
  • Build Automation & Continuous Integration
  • Version Control Strategies
  • Collaborative Development
  • Test-Driven Development
  • Clean Coding
  • Individual Productivity
  • Refactoring
  • Components & Dependency Management
  • Requirements Refinement
  • Developer Testing Best Practices
  • Story & Task-Level Estimation


Stars 4.5 210 Ratings

"Most Valuable: Course materials and labs. The material was helpful to me as an evaluation of where I currently stand vs Agile best practices, and the materials give me many "jumping off" points for further learning." -- Dave M, Cisco 

"The instructor was very knowledgeable and articulate. He was also very responsive to questions and allowed plenty of time for discussions." -- Stacy Dimeo, Developer, Strasz 

"Very excellent instructor with solid knowledge. Very well done, Melvin!!!" -- Parminder Kocher, Senior Manager, Cisco 

"Always great (Melvin!); always great amenities - lunch, breakfast snacks." -- Bob, Database Engineer


Learn how to:
  • Apply individual productivity practices for getting things done
  • Automate tests to efficiently ensure software code is working
  • Develop code using Test-Driven Development to ensure testability
  • Write clean code that ease maintenance and avoid unintentional rework
  • Estimate tasks with greater accuracy and negotiate realistic commitments 

Who Should Attend

Software developers who are, or will be, part of an Agile team

Agile Development Foundations

  • Agile values and principles
  • Scrum, XP, and Lean software development
  • Agile development teams

Automated Testing

  • Adding value with automated tests
  • Test automation frameworks
  • xUnit test patterns

Build Automation & Continuous Integration

  • Automated build scripting
  • Continuous integration infrastructure
  • Essential practices for continuous integration

Version Control Strategies

  • Using version control
  • Workspace management
  • Branching strategies

Collaborative Development

  • Interfacing with other roles
  • Pair Programming
  • Collective code ownership

Test-Driven Development

  • TDD cycle and its rules
  • Acceptance Test-Driven Development (ATDD)
  • Keeping test code clean

Clean Coding

  • Coding standards
  • Code analysis
  • Defining "done"

Individual Productivity

  • Getting things done the Agile way
  • Pomodoro technique
  • Productivity principles


  • Emergent Design
  • Tracking and paying off technical debt
  • System metaphors

Components & Dependency Management

  • Keeping application releasable
  • Dividing code base into components
  • Managing dependencies

Requirements Refinement

  • Refining and breaking up user stories
  • Removing ambiguities
  • Behavior-Driven Development (BDD)

Developer Testing Best Practices

  • Ensuring functional coverage
  • Domain testing
  • Structural testing

Story & Task-Level Estimation

  • Story points estimation
  • Decomposition and recomposition
  • Structured individual expert judgment

Melvin Perez-Cedano

Melvin Pérez-Cedano is a Senior Fellow at Construx Software where he provides training and consulting services that help organizations and individuals to successfully ...