This page is used to keep track of resources used in my professional development, or things I have found afterward that I wish I had known.
PowerShell Resources
Books
Roughly in the order I would read them.
Learn PowerShell in a Month of Lunches
- The authors recommend a chapter a day. If you are not a complete beginner you can move quickly through chapter 8 before it starts getting insightful. I wish someone had handed me this instead of letting me stumble through trial and error.
Learn PowerShell Scripting in a Month of Lunches
- Picks up where the first one leaves off and assumes you are now writing your own functions and modules. Covers Pester too.
- Companion GitHub
Secrets of PowerShell Remoting
- Month of Lunches introduces PSRemoting and WSMan; this one explains the nuances you hit in an actual enterprise. Honestly all of the DevOps Collective books are worth a look.
Mastering PowerShell Scripting
- Chris Dent is very active and very knowledgeable, and his book on automation does not disappoint. If you join either of the Discords below, he is easily accessible.
Practical Automation with PowerShell
- Another book of worked automation examples and how to design your own.
- Companion GitHub
PowerShell Automation and Scripting for Cybersecurity
- The other automation books are great, but I have always had a soft spot for working with InfoSec. Learning what they look for makes collaboration easier and helps you build things securely the first time.
- Not PowerShell-specific, and the only e-book-only entry here. There is an included Automating Microsoft 365 with PowerShell that you can buy separately if you only want the PS material, but I would get the whole thing if you work in the MS stack. It is constantly updated and is basically the reference for M365 administration.
Browser Extensions
Every Microsoft product has its own portal and none of them link to each other. These help.
- Puts every M365 admin portal in one menu. Saves a lot of time flipping through tabs and bookmarks trying to remember a URL.
- Shows you which Graph calls the portal makes behind the scenes, and translates them into PowerShell for your own scripts. The fastest way to automate something you have been doing by hand.
- For when you want to see or replay an API call that Graph X-Ray or browser dev tools did not catch. Worth knowing that Postman now has a VSCode extension with full functionality, so you do not need the separate desktop app.
Discords
- A bunch of hard-hitting PowerShell nerds, from people involved with the actual PowerShell repo and dev team to those who work on parts of VSCode. Very friendly place — I have never been shamed for any of the pretty dumb questions I have put to them.
- Lots of MSP folks working across different stacks, plus active Microsoft MVPs and some actual Microsoft employees. Most of the server is awake during US East Coast business hours.
Practical Hands-On
Reading only gets you so far. These make you actually do the thing.
- Training on Windows administration, PowerShell, and Active Directory, with a free tier. Fair warning on performance: fine on day one, laggy and unresponsive every visit after.
- Fill-in-the-blank tests in the style of Koans, which is a great way to drill syntax and logic. The downside is it has not been updated in several years.
- Fun little SSH challenges where you have to hunt around the host for the password to the next level. Practical, and it makes you think critically about solving problems without being spoon-fed.
Websites
Parts 1 and 2 of this series by Paul Winstanley
- The series overall is about W365, but parts 1 and 2 are a great Graph primer: setting up VSCode, registering an app and picking permissions, connecting with it, and using Graph X-Ray to find commands.
- Pester is the testing framework for PowerShell. If you use something like Maester for Entra auditing, the custom tests are written in Pester.
- Not PowerShell-specific, but useful for regex examples. RegEx Tester will validate what you come up with.
Videos
- You can hit Graph from
Invoke-RestMethodor any other language, but I think of PowerShell and Graph as inseparable at this point. If you are managing Microsoft 365 at all, you will end up relying on Graph, so you may as well learn how to start.
- You can hit Graph from
Working with PowerShell
There are two versions of PowerShell: Windows PowerShell (powershell.exe), which is baked into the OS, and PowerShell 7.x (pwsh.exe), which is cross-platform and has to be installed separately.
Install PowerShell 7 and make it your default everywhere before you start installing modules — it will save you a lot of grief. Most modules written after 2020 target 7. If you hit a legacy module that only works on Windows PowerShell 5.x, import it with the -UseWindowsPowerShell switch.
Commonly Used Modules
Not an exhaustive list, but these cover most of what I do and are the first things I install on a new workstation.
Worth noting: as PowerShell 7 becomes the default, Install-Module is being superseded by Install-PSResource. Get familiar with the new syntax now.
Microsoft Modules
AzExchangeOnlineManagement- EnhancedHTML2
- Extends
ConvertTo-HTMLso your reports do not look like they came out of 1998.
- Extends
Microsoft.GraphandMicrosoft.Graph.Beta- This is an SDK, so expect PowerShell that does not feel much like PowerShell — using it, you are dev-lite. Install both; most of the functionality lives in the beta commands, which hit the
/betaGraph endpoint. Eventually you will find that calling the endpoints directly gives you more than the module does. - If the SDK’s structure really bothers you, Microsoft.Graph.PlusPlus smooths it over.
- This is an SDK, so expect PowerShell that does not feel much like PowerShell — using it, you are dev-lite. Install both; most of the functionality lives in the beta commands, which hit the
- Microsoft.Graph.Entra and
Microsoft.Graph.Entra.Beta- Built for admins who were not used to the structure Graph expects, and meant as a direct replacement for the retired
AzureADmodule. It bridges the gap, but does not cover everything Graph can do.
- Built for admins who were not used to the structure Graph expects, and meant as a direct replacement for the retired
Microsoft.Online.SharePoint.PowerShellMicrosoft.PowerShell.ConsoleGuiToolsOut-ConsoleGridViewis great for picking through data without leaving the terminal.
Microsoft.PowerShell.GraphicalToolsOut-GridViewis the GUI popout version of the same idea. Windows only.
MicrosoftTeamsPowerShellGetandMicrosoft.PowerShell.PSResourceGetPowerShellGetis only needed if you are on Windows PowerShell. PowerShell 7.4 and later ships with its successor,Microsoft.PowerShell.PSResourceGet, already installed.
Vendor-Specific Modules
- Lenovo Client Scripting Module
- For Lenovo fleets. Gets you system and docking station details you would otherwise be chasing by hand.
Third-Party Modules
Always assess and evaluate before putting any of these into production.
- BurntToast
- Sends custom toast notifications in Windows, which is handy when a script needs to actually get a user’s attention.
- Graph EasyPIM
- Activating PIM roles from the CLI instead of clicking through Entra blades.
- ImportExcel
- Despite the name, I almost always use it for exporting. Working in a Google Workspace environment made me hate how Sheets handles CSVs so much that I became dependent on this to get properly formatted spreadsheets out. It also does a ton of real Excel work: autosizing columns, pivot tables, charts.
- Microsoft.Graph.PlusPlus
- Wraps the Microsoft.Graph SDK so it reads more like PowerShell.
- Pansies
- Styled terminal output — gradients, hyperlinks, HTML color names. Purely cosmetic, still nice.
- platyPS
- Great for building out documentation for modules you write, once you get used to the schema it wants.
- psframework
- A logging module I wish I had found years earlier. Saves an enormous amount of time, and I have found plenty of uses beyond logging — it makes some param handling much simpler.
Microsoft Graph Command Helpers
These are cmdlets rather than modules — they ship inside Microsoft.Graph.Authentication and are the three I reach for most when working out what a call needs.
- Find-MgGraphCommand
- Shows what permissions a cmdlet needs and which URI it is hitting.
- Find-MgGraphPermission
- Looks up the details of a permission a script or app has.
- Invoke-MgGraphRequest
- A cleaner Graph-specific alternative to
Invoke-WebRequestorInvoke-RestMethodfor when the endpoint does not have a cmdlet with all the options built out yet.
- A cleaner Graph-specific alternative to
VSCode
PowerShell ISE does not support version 7+ and is not getting new features. Learn VSCode, install it anywhere you were using ISE (especially jump boxes), and set up an ADMX with Intune so only approved extensions and features are in play.
Tunnels are a great remoting feature as long as you secure them properly.
If VSCode feels too dev-y and you miss ISE — especially for building GUIs — PowerShell Studio from Sapien is a solid replacement, assuming you can get approval for the $550 license.
Extensions
More VSCode Goodies
- Copilot Commit Instructions
- Copilot’s generated commit messages lack detail and consistency. Dropping this into your
settings.jsonfixes that.
- Copilot’s generated commit messages lack detail and consistency. Dropping this into your
- Oh My Posh
- Themes for your terminal. Fonts have to be set separately through the Integrated Font Family setting, and
$PROFILEfor VSCode is a different file than your non-VSCode pwsh profile. Current favorites arenight-owlandquick-term. 
- Themes for your terminal. Fonts have to be set separately through the Integrated Font Family setting, and
- Viewing Default Settings in VS Code
- VS Code Keybindings
- Good-to-know keybindings.
CTRL + Hfor find and replace alone makes things smoother.
- Good-to-know keybindings.
Microsoft 365
Interview Prep
Even with hands-on experience it is worth a refresher so you do not fumble a topic you actually know. This M365 interview question guide is a good one to skim beforehand.
Useful Non-Portal Tools
Microsoft 365 Apps Configuration Tool
- I often see people writing scripts or remediations to manage Office configuration when this tool should be used instead. Pick your policies in the GUI, get XML out, far less room for error.
- Useful for exploring Graph’s URI structure, the permissions a call needs, and what the responses actually look like before you write any code against it.
Microsoft Remote Connectivity Analyzer
- The hub for testing Exchange, Teams, DNS, and mail flow issues. I constantly forget it exists and come up with some interesting workarounds instead, so it is here as a reminder to check it first.
Test Lab Resources
Lab Setup
Hydration Kit for Windows Server 2022
- Builds a full on-prem mockup: AD, SCCM, SQL, and Windows clients.
Microsoft 365 Test Environment
- Automates standing up an M365 lab tenant, which matters more now that Microsoft has stopped handing out dev tenants.
Cybersecurity Lab by Ben Heater
- Proxmox as the hypervisor, Wazuh for SIEM, and a set of pentesting VMs.
- Another Debian/Proxmox turnkey option. Be warned that it completely takes over the host, so skip it if you need that machine for anything else.
- Microsoft bumped the free tier to 10 databases at up to 32 GB each, which is plenty for development or test automation.
Guides
So you have set up the lab — now what?
- Learn to Cloud
- Vendor agnostic, so you can pick AWS, GCP, or Azure. Good foundations either way.
- Bootcamps from A Guide to Cloud
- Free videos on a range of Microsoft topics. Mostly Azure, but there is 365 and Sentinel material in there too.
- Intune for Windows at Robopack
- Completely free and a great how-to if you are new to Intune. Just ignore the Robopack videos, that is a separate product.
MCPs (Model-Context-Protocol)
These are under test lab resources on purpose — they are proof-of-concept tools and not something to run in production without evaluating first. Model-Context-Protocol is an open standard from Anthropic for letting LLMs work with data sources through natural language.
Where they shine is reads and analysis: you can ask questions of an Entra or AD environment without deep scripting or portal experience. Writes are another story — batch work like adding group members is slow and inefficient right now.
Available MCP Projects
- MCP for Entra/Azure by Merill Fernando. I wrote up my setup experience in this post. Excellent for querying Entra with natural language.
- MCP for on-prem Active Directory by Microsoft MVP Ruud. The built-in guardrails help, but I would still review everything carefully before it goes anywhere near production.
- Microsoft’s own implementation, with an in-depth blog post. The most formal take on MCP so far.
- Cloud-hosted, and gives your assistant live access to official Microsoft documentation instead of whatever it remembers from training. Handy for grounding answers in current Learn content. Still public preview, so endpoints may change.
- Cloud-hosted, by Ugur Koc. Keeps thousands of community KQL examples on hand so your assistant is not guessing at syntax or going off to index the web itself. That is a real productivity gain when you are writing your own queries for Log Analytics workbooks or Intune reports.
- It never touches the tenant and never executes anything, it just returns examples. The queries you build off the back of them are the ones that actually hit your environment.
- By MVP Doug Finke. You write PowerShell functions with descriptive comments and can then query them in natural language. Note that functions have to be declared
globalfor the server to see them.
- By MVP Doug Finke. You write PowerShell functions with descriptive comments and can then query them in natural language. Note that functions have to be declared
Certifications
Personal thoughts on industry certification usefulness, all opinions my own.
PeopleCert (formerly Axelos)
Whether it was the PeopleCert acquisition or their own doing, this company is everything bad about the certification industry. They make you pay a subscription to keep your digital badge current, and they introduced renewals on certs without adding any new material to justify them.
That said, they are firmly entrenched — Agile, ITIL, PRINCE2, PMP. For now we mostly have to suck it up and deal with their terms.
ITIL 4 Foundation
- Establishes the service management framework most modern enterprises follow: change control, incident vs problem, and a pile of ITIL-specific vocabulary that comes down to rote memorization.
- General purpose enough to add value whether you are technical, in sales, or in management.
- Used to be a lifetime certification, now renews on a 3-year cycle despite no revisions to the material.
BetterCloud
The product itself is not complex — it is a SaaS lifecycle management tool competing with Entra, Okta, and the like. It leans noticeably harder into Google Workspace and Slack than into anything Microsoft.
The upside is their Flight School portal, which gives you a free code for the exams and mails you swag when you finish.
BetterCloud Certified Administrator
- Tests administrator competency in the product: connecting an HRIS, connecting an IDP, DLP options, and so on.
- The free guided webinar walks you through exactly what is on the exam. If you fail it, I would assume you have never opened the admin portal.
- Anecdotally, I have never met another person who has worked in the product, and no recruiter has ever reached out to me about it. It is worth more internally than on the market.
CompTIA
These are great because they are vendor agnostic. They are also a little pricey early in your career, in the $300–400 range per exam. They last three years unless you renew something “downstream”, and they stay current when you earn other vendors’ certifications — my Microsoft certs renew everything I hold.
There is no shortage of study material, but I cannot recommend Professor Messer enough for the CompTIA trifecta (A+/Network+/Security+). His YouTube playlists are updated to the current exam versions, comprehensive, and free.
A+
- The industry standard starting point. It is a mile wide and an inch deep, there to introduce you to the basics of everything.
- Takes two exams to pass — you are not A+ certified until you have passed both.
- On its own it holds no real weight on a resume, but it will get you the interview for entry-level roles.
Network+
- Wired and wireless networking fundamentals, with an emphasis on subnetting without a calculator like a monster.
- Gives you networking familiarity well beyond what A+ covers.
- If I had a do-over I would get the CCNA instead — it carries more weight and goes further, including IOS commands.
Security+
- Covers network security, risk management, cryptography, and threat mitigation.
- This is the one you will get the most resume mileage out of.
- You do not need to be aiming at an InfoSec or pentest role to benefit — virtually anyone IT-adjacent will use these concepts.
Linux+
- Honestly, I bought this voucher alongside the others to get the best discount out of my CompTIA Store subscription, then took it a week before it expired with zero prep and passed.
- TLDR: it is surface-level Linux that anyone slightly familiar could pass. LPIC or Red Hat certs will get you more mileage.
Microsoft
Microsoft certs are well recognized and mapped to specific job roles. Most renew annually through a free online assessment; the fundamentals exams are lifetime-valid.
Every exam voucher outside the fundamentals track is $165, and the certification is good for a year with free self-paced renewal through your Microsoft account.
For the full map of certifications and their prerequisites, see Become Microsoft Certified, which links through to each exam and its Learn pages. Speaking of Learn — it is excellent study material, free, and you can access Learn pages during the exam, so getting familiar with how it is organized pays off twice. I would take Learn over the LinkedIn Learning videos on the same topics; of the few I have audited, several were out of date or outright wrong. They have also started publishing official course videos to go along with it.
There is also Applied Skills, free scenario-based credentials focused on a single task. I am not sure they carry weight on a resume, but they are useful for validating a specific skill if you are angling for an internal move.
-900 Series / Fundamentals
- Lifetime-valid and very general — a high-level overview of what a given product or service area covers.
- They will not validate skills, but they are good for dipping your feet in. I picture these as existing for recruiters and non-technical managers, or as a way to find out whether a subject interests you.
- These used to be free through virtual training days, but that program has ended. Check the Certification Hub for current discounts.
Study and Practice Environments
Getting hands-on is harder as everything moves to the cloud and normal subscriptions stop being feasible for one person. You can stand up an Azure Free Trial and activate trial licenses for whatever you are testing. Be careful: you generally need a card on file, and it is easy to blow past the $200 cap if you are not watching.
See Lab Setup for building your own instead, keeping in mind some cloud features will start charging you once the trial dates pass.
Role-Based Certifications
The ones below are the paths I have taken or looked hardest at. Each maps to a job role rather than a product.
MD-102 – Endpoint Administrator
- Formerly “Managing Modern Desktops.” This is the one if you manage Windows clients.
- Covers Windows versions, Active Directory, Group Policy, SCCM, Intune, and Autopilot.
- The modern successor to the old MCSA for desktop management.
SC-300 – Identity and Access Administrator
- Microsoft Entra, user and group management, SSO, and app registrations.
- The right fit if you work in IAM or own access control policy.
MS-102 – Microsoft 365 Administrator
- Expert-level, and it requires MD-102 and SC-300 first.
- Tenant setup, conditional access, Defender, Teams, and compliance through Purview.
- The closest modern equivalent to the old MCSE.
AZ-104 – Azure Administrator
- The core Azure admin cert: VMs, networking, storage, subscriptions, and identity.
- Includes scripting and automation with PowerShell, ARM templates, and the Azure CLI.
AZ-305 – Azure Solutions Architect Expert
- Builds on AZ-104, but shifts from how to why — planning solutions and justifying design choices.
- Disaster recovery, cost optimization, hybrid environments, and secure architecture.
AZ-800 / AZ-801 – Windows Server Hybrid Administrator
- Windows Server combined with cloud services.
- Currently the only Microsoft path that validates Windows Server administration skills at all.
Specialty: Azure Virtual Desktop
- Microsoft’s VDI offering, the alternative to Citrix or VMware Horizon.
- Worth it if you support remote work environments or virtual desktops.
Okta
Okta’s exams work a little differently: you cannot go back and review or change an answer. Questions are weighted individually, and you are often picking the best answer rather than the only correct one.
Okta Certified Professional
- Intro-level, aimed at sales engineers, managers, or entry-level admins.
- Covers Okta’s basic capabilities, navigating the UI, and core configuration.
- I earned this while holding only basic Help Desk permissions, and passed the renewal two years later without studying.
- Like BetterCloud, it is worth more inside an Okta shop than it is in a hiring pipeline.
Western Governors University (WGU)
WGU is fully online and self-paced, offering Bachelor’s and Master’s degrees in IT and related fields. You pay by six-month term and finish as many courses as you can inside that block, which is what makes it cheap if you move fast.
Their degrees often bundle industry certification vouchers (CompTIA, Cisco, Microsoft), and certs you already hold can count as course credit.
Common Pitfall
Plenty of people start at WGU and stall out, usually from life circumstances or from not planning the front end. Prep work before you enroll can dramatically shorten the degree and cut what you pay.
Pre-WGU Prep
- Around $300 for 4 months of unlimited self-paced courses, two at a time.
- Similar to CLEP/DANTES (for military learners), with no proctoring.
- Many of these credits transfer. Check transfer eligibility here.
- $99 for a 2-month block covering one course.
- Gives you a structured way in, and the credit counts toward your degree.
- The $99 is reimbursed once you officially enroll.
Transferable Certifications
- Certs you have already earned can replace course requirements outright. Check accepted certs here.
Existing College Credit
- An Associate’s degree or prior coursework may count too.
Enrollment Timing
Expect 45–60 days from starting your application to the beginning of your term. Plan your prep work backward from the start date you actually want.
Summary
With enough transfer credit — Sophia, WGU Academy, prior coursework, certifications — you can walk into WGU’s IT Bachelor’s program with only 60 credits left, which puts graduating in one or two terms within reach.
