Several years ago, I attended a very interesting briefing at the MVP Global Summit in Redmond. The session dealt with a new technology called Monad, which was later renamed to Windows PowerShell. Throughout the session, the speaker demonstrated all sorts of PowerShell cmdlets that could be used to manage or monitor the yet-to-be released Windows Server 2008.
To be perfectly honest, I don’t really remember much about the demonstration aside from the fact that the cmdlets being used seemed to be very cryptic. I do, however, remember a conversation that occurred after the session with fellow PITC author and Microsoft MVP Bud Ratliff.
In talking about what we had just seen, we both agreed that if Microsoft decided to include this new command line interface in the final release of Windows Server, the certification exams were bound to become a lot more difficult. I can’t speak for Bud, but I imagined Windows Server exams becoming almost like developer exams, with questions that required the candidate to write PowerShell scripts that would perform various tasks.
Several years have passed since that day in Redmond, and PowerShell is now in its second release. So with that in mind, you may be wondering what sort of role PowerShell plays with regard to Microsoft Certification exams.
Let me start off by saying that as of the time this article was written (October 2010), Microsoft does not require candidates to take a PowerShell-specific exam. Currently, no PowerShell exams even exist. I do, however, want to go on record as predicting that within the next five years, anyone wanting to earn an MCITP certification for Windows Server will have to pass a PowerShell exam.
Obviously that’s a pretty bold statement, but there are several reasons why I am making this prediction. For starters, PowerShell has done much more than just become a mainstream technology. It is the basis for many Microsoft Server products. For example, the Exchange Management Console (the GUI used to administer Exchange Server 2007 and 2010) was built on top of PowerShell. Any time that you perform an action through the GUI, PowerShell cmdlets are being executed in the background.
More importantly though, Microsoft has begun trimming down the GUI in many of their server products. In Exchange Server 2010, for example, only the most common management tasks are exposed through the GUI. For everything else, administrators have to delve into the Exchange Management Shell (which is a PowerShell extension for Exchange Server).
Believe me when I say that Microsoft has not ignored this little tidbit of information when it comes to the certification exams. Exam 70-662 (Exchange Server 2010, Configuring) focuses heavily on PowerShell cmdlets. In fact, I seriously doubt that it would even be possible to pass the exam without knowing how to manage Exchange Server from the command line.
Exchange Server is not unique in its heavy use of PowerShell cmdlets. Plenty of other Microsoft server products are designed to take advantage of PowerShell to varying degrees. System Center Data Protection Manager 2007, for example, can be administered almost entirely through the GUI, but there are at least a few administrative actions that require the use of PowerShell.
I tell you all this to underscore the point that PowerShell isn’t going away any time soon. If anything, I think server virtualization will continue to drive PowerShell adoption. Organizations are beginning to discover that the best way to get the maximum virtual server density out of their host servers is to use Server Core operating systems, which must be configured and managed through the command line (although remote GUI based management is sometimes possible).
So what does all of this mean for Microsoft certification exams? In a nut shell, it means that you can expect to see varying degrees of PowerShell-related questions on many of the Microsoft Server exams.
The actual number and type of PowerShell questions that you can expect to see will vary, however, for two reasons. First, some server products are more heavily dependent on Windows PowerShell than others. Second, Microsoft creates a pool of potential test questions for each exam. You are never going to take an exam and see every question in the entire pool. Usually you will end up seeing about half to a third of the potential questions.
This is important because it is a factor that can play into the number of PowerShell related questions that you actually see on the exam. Take the System Center Data Protection Manager 2007 exam for instance. Looking around various websites, it seems safe to conclude that there may be four or five potential PowerShell questions. When you sit down to take the exam, though, you may only see one or two of those questions. If that is an accurate estimate, then it would be possible to pass the exam without knowing the PowerShell material. On other exams, however, there are so many PowerShell questions that you have to know how to manage the server product from the command line in order to pass the exam.
So what about the questions themselves? What types of PowerShell questions can you expect? To date I have never seen an exam question that required you to write a PowerShell script, nor have I seen any simulation questions that require you to enter commands into a simulated PowerShell window (although I can’t say with absolute certainty that such questions don’t exist).
The PowerShell questions that I have seen have all been multiple choice. Sometimes you are only required to know which cmdlet is used to accomplish a certain task. For example, here is a PowerShell-related test question that might appear on the Exchange Server 2010 exam (this isn’t a real question):
Which EMS cmdlet would you use if you wanted to find out which users were included in a distribution group?
Often times exam questions aren’t quite that simple. I have seen plenty of questions that ask you which command can be used to accomplish a required task. An example of such a question might be:
You are a network administrator for your company. You need to find out which users are included in the Finance distribution group. Which EMS command should you use?
A: Get-DistributionGroupMember –Identity “Finance”
B: Get-DistributionGroup –Name “Finance”
C: Get-User –Identity <user name> -DistributionGroupMembership
Unless you have a clear understanding of the cmdlets used by Exchange, you would be hard pressed to pick out the correct answer (which is A).
Microsoft has been placing a greater emphasis on PowerShell in their products, and this emphasis is reflected in Microsoft’s certification exams. If a product contains PowerShell support then you can be sure that at least some PowerShell-related questions will be included on the certification exam for that product. My advice is to look around the Internet and find out to what degree PowerShell is covered prior to taking an exam.