Feb 11, 2010

The Professional Scrum Developer Course

Ken Schwaber (co-creator of Scrum) moved on from the Scrum Alliance last year to found the Scrum.org organisation specifically to meet some goals that differ in purpose to those of the Scrum Alliance.  To quote from the Scrum.org front page

Scrum.org is staffed by the developers of Scrum and the best Scrum practitioners in the industry, and was founded to:

  1. Help individuals assess their knowledge of Scrum and how it is used.
  2. Help organizations find the best training courses, coaching, consulting, and topical Q&A sessions to optimize their use of Scrum.
  3. Help Scrum teams and organizations learn how to optimize their Total Cost of Ownership for systems and products built using Scrum.
  4. Initiate innovative programs, such as the Certified Scrum DeveloperTM and Professional Scrum DeveloperTM, to accelerate the effectiveness of Scrum.

Note that last point.  The one that talks about the Certified Scrum Developer program.  It turns out that the Certified Scrum Developer trainer program has recently been formally announced on the Scrum.org web site.  You can read the full announcement for yourself but to save yourself a little time here’s the summary (quoting again)

The PSD program:

  • Has been built from the ground up specifically for developers
  • Focuses on both teamwork and on technical practice, because software development in the 21st century relies on people skills as much as on tech chops
  • Addresses head on the people and technical issues that I know other Scrum courses shy away from
  • Simulates a real working environment – no “chalk and talk”
  • Utilizes an innovative continual assessment model to support student development beyond the course

What’s even better is that there are actually two flavours of this course coming.  One for .NET developers and one for Java developers as the toolsets they use are quite different.

I’ve been fortunate enough to be a lab rat for the .NET version of the course and I really enjoyed it.  That said I should take a moment for some full disclosure; I’m looking to be a Certified Professional Scrum Developer Trainer so that I can deliver it publicly through Readify (my employer) in the near future.  Now that that’s out of the way I’ll continue :-) …

In my opinion the Professional Scrum Developer course does a really good job of addressing the issues that .NET teams have doing development in a scrum environment.  Being a .NET course it specifically targets TFS 2010 and Visual Studio 2010 as tools for supporting the scrum process and providing a platform for strong agile engineering practices.  Obviously you can use tools other than these for supporting your efforts, and I don’t want to open up arguments about which tools are best, however given the majority of companies have TFS and Visual Studio it makes sense to target these platforms as a starting point.  If there’s enough interest for delivering the course using other tools such as open source alternatives then maybe an OSS version of the course can be developed but for now, it’s the pure Microsoft stack.

From a process view point the course also provides students very practical hands on experience in the tools and scrum via a series of short sprints over a 5 day period to ensure that students get a feel for the rhythm of how scrum teams should work on a day by day basis and how the tools can support them in that work.  This is, I think, where the real value of the course lies.  I’ve seen too many teams who think they’re doing scrum or agile and who are so far from it that it’s laughable, yet they just don’t realise that they’re doing things wrong.  A course like this is a great way for these teams to see the mistakes in what they’re doing and to get some practical experience on how to do things right that they can then take back to their offices to improve what they’re doing and to get higher quality software into production on a more regular basis.

One other thing to note about this course is that students who get to the end of it aren’t automatically granted a Professional Scrum Developers certification.  They will have to pass an exam to prove that they know their stuff.  This is so much better than how past scrum related certifications (think CSM) have been run and adds some weight and value to the certification process.

I’m personally quietly excited that this is happening and I’m looking forward to being able to start training others in this area.  I’ll be post some more information about it as it becomes available.

6 comments:

  1. Hi Richard,

    Leaving aside debate over the merits of certification, I really like the idea of Scrum training for developers. However I disagree with this:

    "... given the majority of companies have TFS and Visual Studio it makes sense to target these platforms as a starting point"

    None of the last 3 companies I have worked for since TFS was released have used TFS (two with very close relationships with Microsoft, all with MSDN subscriptions at varying levels). Targeting VS is fine, but I don't think TFS is that ubiquitous.

    Aside from that, are you sure TFS won't hinder learning the fundamentals of Scrum? From my (admittedly outdated) knowledge of TFS it is a tool that really impacts every aspect of your development process. I think it could become very hard to separate out the tool from the essentials of the process, and if people don't understand the theory behind it then they're going to have a hard time adjusting the process to suit.

    Regards,
    David

    ReplyDelete
  2. @David

    TFS shouldn't hinder the learning process of Scrum (as it's just a tool), but what will is when the process isn't understood by management.

    If the process isn't understood and supported from the top then it won't matter what tool is used (TFS or VS), the development team is going to have a hard time using Scrum anyway.

    Maybe Scrum.org should consider developing a program for the managers so they can support the developers.

    Regards
    Matt

    ReplyDelete
  3. @David, @Matthew is right in that TFS won't get in the way.

    The course spends a lot of time on process before even touching the tools, so there is plenty of opportunity to get the process understood before even touching visual studio. TFS interaction is related to work item management (stories, tasks, etc) continuous build and source control whereas the all the other engineering topics that get covered are related to Visual Studio.

    ReplyDelete
  4. Thanks for clarifying. I guess I just don't like the thought of people thinking they need to use TFS to do Scrum (or worse, that TFS *is* Scrum), especially when something as simple as index cards on a whiteboard can be very effective for work item management. :)

    ReplyDelete
  5. @David Completely agree with that sentiment, and I'd hope people wouldn't think that that is the case. Especially as I actually like to keep using the physical tools (cards/post-its) even when I'm also using TFS or some other tool.

    ReplyDelete
  6. I actually enjoyed reading through this posting.Many thanks.

    ReplyDelete