NOTE: I will update this post periodically.
UPDATE: I also maintain a Developer Tips n Tricks deck here. The deck is additive to the content in this post.
Here’s my recommended training plan to become a Dynamics CRM 2011 developer (it’s what I used). The foundational technologies you will need to understand are:
- Visual Studio 2010
- .NET Framework 4.0
- SOAP based Web Services
- OData (aka WCF Data Services)
- Windows Workflow Foundation
- Silverlight (optional)
- HTML
- JavaScript
- XML (many customizations requiring tweaking XML or using tools that tweak XML)
- SQL Server Reporting Services
There are other technologies that many CRM development efforts include as part of the overall system solution.
- Excel & PowerPivot for advanced Business Intelligence & Reporting
- Claims-based Authentication and ADFS 2.0
- ASP.NET
- Windows Azure Platform
- BizTalk Server
- Team Foundation Server
The first set are almost always used. When to use the second set is highly dependent on the needs of the overall solution architecture. I’ll be blogging about some of these over time. Why is TFS in the second set? I wish I could say TFS is almost always used, but just like other forms of development, it would surprise you how many people aren’t using good ALM tools. You should strive to make TFS part of the first group. There are all sorts of resources around the web to learn fundamentals of most of these technologies. I am not going to make this post about those. If you are looking for a one stop shop to ramp up on the above, then you might want to take a look at Pluralsight On-Demand. I get nothing out of endorsing them. I’m just one of many satisfied subscribers. I consider them top notch. I recently asked them about CRM training through their contact form. The response was that it is on their TODO list. The more people that ask, the higher priority it will get. I already had the fundamental knowledge above when I began my CRM dev journey. What’s next is what I did to ramp up and dig in to Dynamics CRM 2011 specifics.
- Either Build your own VM or download preconfigured VMs (note you need access to PartnerSource)
- Read Working with Microsoft Dynamics CRM 2011
- Watch the Dynamics CRM 2011 Developer Training Kit and go through the Hands-On-Labs from the offline kit
- You need a VM from above or a CRM Online trial plus a regular dev workstation for this
- Download the Dynamics CRM 2011 SDK (training kit will give you the dev fundamentals, SDK will help you dive deeper)
- Read Microsoft Dynamics CRM 2011 Implementation Guide (downloadable form)
- Read Microsoft Dynamics CRM 2011 Administration Bible
- Read Microsoft Dynamics CRM 2011 Customization & Configuration (MB2-866) Certification Guide
After you’ve installed the SDK, go immediately to the [InstallDir]tools and [install]templates directories. There two folders in particular that are golden nuggets of dev productivity: templatesxrm.pagescriptprojecttemplate and toolsdevelopertoolkit. Both of these add enhancements in the form of VS templates and other helpers that you won’t want to miss.
There are some very useful / productive tools and accelerators on CodePlex as well: http://bit.ly/ofh2Zy. You’ll also want to bookmark the Microsoft Dynamics CRM Developer Center on MSDN.
Stayed tuned for posts and videos diving deeper on many of these topics and more.
If you are looking for more traditional training options, there are some decent online (not instructor led) courses from Microsoft Learning, here’s a link that narrows things down to CRM 2011 training:
If you want to broaden the search (instructor led, etc.), go to:
http://www.microsoft.com/learning/en/us/training/microsoft-dynamics.aspx
You’ll want to update the “Microsoft Products” textbox to “Dynamics CRM 2011” from “Dynamics,” then select the training format you are interested in.
Once you become a Dynamics Partner and have access to PartnerSource, you also have access to training and details on how to get certified.