Date(s) - 08/04/2019 - 10/04/2019
9:00 am - 5:00 pm
This Certified Scrum Developer training course is aimed at software developers (programmers) who are building software in an Agile environment. The goal is to expose students to the most important tools and techniques that need to be applied in order to build good software in the iterative and incremental way. These ideas are central to the entire field of Agile software development.
The Learning Objectives cover the critical skills in coding, testing, refactoring, continuous integration, and other related topics that are needed for successful team software development.
By the completion of the Certified Scrum Developer training technical practices course, the student will be able to perform test-driven development, refactoring, and continuous integration in a course-provided sandbox situation. The student will be familiar with the terms and practices involved, and with why these practices are important. They will have taken the first steps toward becoming expert in iterative and incremental development.
By the completion of the Certified Scrum Developer training technical practices course, the student will be able to…
- 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
Collaboration – This might include, but is not limited to, the following concepts:
- Define pair programming and mob programming
- Define “collective code ownership”
- Describe “working together as one team.”
Test-Driven Development – A study of test-first development, including but not limited to, the following concepts:
- 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
Refactoring – An introduction to the practice of refactoring, including but not limited to, the following concepts:
- 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.
What past students have said about the Certified Scrum Developer training technical practices course:
- The instructors were very knowledgable and made it easy to see how adjusting our practices could benefit us greatly.
- I like practicing test driven design through pair programming and mob programming. The training
offered a way to work on these concepts through low-risk, easy-to-kickoff exercises.
- The programming exercises were great but I’m not a programmer so I probably did not get as much out of it as developers.
- All of the pair / mob programming exercises were very productive, and made me more comfortable working with my team.
Students should also arrive at the course familiar with:
- An understanding of programming logic
- A willingness to code
- Agile Manifesto (4 values, 12 principles)
- 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.
About Rocket Nine Solutions
Rocket Nine Solutions stands out in the marketplace of Agile training and coaching organizations because we choose to focus on building up our local Southern California community. We sponsor and participate in our local agile meet-ups and conferences. We strive to build up a local talent pool of coaches in an effort to come alongside our clients implementing Agile transformations. We partner with top-notch trainers who are leaders in the global marketplace to provide the highest quality training for our Southern California clientele. All of our courses are taught interactively with an emphasis on learner engagement. Please click here to learn about our founder Scott Dunn’s background and why he is so passionate about agile.
Cancellation Policy – Reschedule to another of our classes anytime, or cancel anytime up to 7 days before class for 100% refund. Fewer than 7 days notice will result in a 75% refund to cover hard costs. For minimum learning experience, the course must run with a minimum eight registrants. If fewer than eight are registered, the class may be cancelled three to seven days in advance, and attendees will be offered seats in the next Rocket Nine Solutions classes in the area or a full refund. When Rocket Nine Solutions classes are marked “Guaranteed to Run” this means that the class will not be cancelled. In other words, barring instructor illness or major catastrophe the class will run at the time and location listed.
If you need assistance, please contact Cliff Rosa at [email protected] or call 714-699-4679.