Date: March 15 - 17, 2017
Time: 9 AM - 5 PM
Venue: Minnesota Consulting Solutions
Location: Minneapolis, MN
Instructor: Rob Myers
Agile software development requires a unique approach to the actual writing of code. While there are no “silver bullets,” certain practices are much better at controlling quality, while retaining the flexibility and maintainability required of Agile’s incremental product development approach.
This 3-day course, primarily for developers, provides an immersive, hands-on coding experience with a time-tested set of engineering practices including relentless refactoring, Test-Driven Development (TDD), Continuous Integration (CI), pair-programming, emergent design & architecture, and many other supporting practices.
Today’s professional developer will appreciate experiencing these practices in a safe, fun, and mildly realistic environment.
A variety of individual practices and how they support each other.
- Core Practices
- Relentless Refactoring*
- Test-Driven Development*
- Continuous Integration*
- Supporting Coding Practices
- Emergent Design & Architecture*
- Pair Programming*
- Collective Ownership*
- Mock Objects
- Experimental Spikes
- Refactoring toward Extensibility
- Legacy Characterization Testing
- Supporting Team Practices
- Team Demos*
- Sit Together*
- Sustainable Pace*
- Story Testing/ATDD/BDD
- Creative Slack
- CRC Cards
*These are experienced in Depth. Others are as-needed, at the instructor’s discretion, and as time permits
- A clear understanding of why our industry needs professional development & engineering practices.
- A clear understanding of why these particular practices are well-suited for Agile frameworks such as Scrum & Kanban.
- Techniques for teams and individuals to realistically stick to these practices in a disciplined way.
Beginner to experienced.
Software developers, lead programmers, and architects. Participants will split into teams of 4-6 people who can read and understand the programming language selected by that team. Each participant will be working closely with others to craft real code.
- At least 80% of participants have experience with the selected programming language(s).
- Solid familiarity with an Agile framework such as Scrum, XP, or Kanban. This can be from at least 4 months on a coached Agile team, from fundamental Kanban or Scrum. (e.g., Certified Scrum Master), or from Agile Institute’s own Essential Agile Principles & Practices course.
- There are two possible education tracks to pursue a CSD certification.
- Track 1: CSM Course (2 days) + CSD Technical Course (3 days)
- Track 2: CSD Intro Course (1 day) + CSD Technical Elective Course (1 day) + CSD Technical Course (3 days)
Don’t' have a qualifying CSM yet? Please sign up for one of our courses here: http://collaborativeleadershipteam.com/upcoming-course/
- A computer with a prepared development environment. Students will be pair programming in this course and we will need at least 1 working computer for every two students.
- Students will be provided with internet access by the facility.
Rob Myers has 29 years of professional software development experience, and 17 years using and coaching these engineering practices on mission-critical (and sometimes life-critical) applications. Rob has also been crafting and delivering technical Agile courses since 2001. He makes sure every course he delivers is a blend of fun, practical hands-on labs, plus insight gleaned from his years of industry experience with these core engineering practices.