Certified Scrum Developer Training
Why Certified Scrum Developer training? Without the technical practices, Scrum will fail. Your team will perhaps build and demo software quickly, but will it be quality code that’s easy to maintain? If QA barely got the new features tested, how will they stay on top of the next set of new features AND regression test the last set? This Scrum Developer training class covers, hands-on, the technical practices that enable teams to build quickly, iteratively AND sustainably.
When Scott Dunn, the founder of Rocket Nine Solutions, was a manager, he would suggest these practices to his team members, but couldn’t walk them through it as an expert. In his experience, they need someone with the technical chops to sit down with them and walk them through it, hands-on. Not only that, but much of DevOps is built on top of the TDD and CI practices, as well as the spirit of “automate everything.” Getting these practices down within each sprint is the first step towards DevOps.
In this course, we will not only discuss the truly cross-functional and iterative mindset needed by highly-responsive Agile teams; but will practice those engineering disciplines required for that mindset to become a reality.
Topics in the Agile Technical Practices class on the pathway to Certified Scrum Developer:
- Understand why highly-effective developers write their own tests
- Understand assertions
- Understand the full spectrum of testing options
- Identify various types of tests (unit tests, integration tests, functional tests, acceptance tests, etc)
- Know how to write automated tests
- Define pair programming and mob programming
- Define “collective code ownership”
- Describe “working together as one team.”
- Describe Test-Driven Development (TDD) as a design approach.
- Review the steps of the red-green-refactor cycle.
- Explain, using examples, at least three unit testing principles and practices.
- Outline five qualities of a good test.
- Describe how to measure test effectiveness.
- Describe what “legacy code” is
- Develop a strategy for working effectively with legacy code
- Define refactoring
- Describe when to refactor
- Understand SOLID principles
- Outline refactoring for maintainability
- Define refactoring to patterns
- Understand—and recognize—code smells
- Describe what Technical Debt is
- Understand the influences for technical debt
- Match the benefits of various technical practices to influencers of technical debt
- Understand what test doubles are (e.g. mock, stub, fake, spy, etc)
- Understand when to use a test double
- Understand how to balance the trade-offs in using mocks
Continuous Mindset – An introduction to the key practices of continuous integration
- Define a single command build
- Summarize how to create a build that is automated, self-testing, and fast
- Describe the importance of a single-source repository
- Define increasing visibility and automating deployment
With all these practices, many of them drawn from Extreme Programming, I treat them as tools in my toolbox. I don’t always need a hammer, I don’t always need a screwdriver, but having those tools, when I can apply them in the right situation, they really are effective.
– Paul Moore, CSD Instructor
Certified Scrum Developer Training Interest Form
No classes currently listed? Fill out this scrum developer training interest form to join the list and hear about our next class.