M365 Automation Engineer
R
Job Description: Senior M365 Automation Engineer (PowerShell & DevOps)
Role Overview
We are seeking a highly skilled M365 Automation Engineer to lead our "Configuration as Code" initiative. The primary focus of this role is to implement, manage, and extend the Microsoft365DSC (Desired State Configuration) framework to automate the governance and deployment of our Microsoft 365 tenant.
The ideal candidate is not just a user of tools, but a developer capable of diving into the source code of open-source frameworks to modify, optimize, and create custom resources to meet specific organizational requirements.
Key Responsibilities
- Implementation: Design and deploy the Microsoft365DSC framework across the organizations M365 landscape (Teams, SharePoint, Exchange, Intune, Azure AD/Entra ID).
- Framework Development: Modify and extend the Microsoft365DSC core engine and resources. Write custom PowerShell modules and DSC resources where native ones do not exist.
- CI/CD Integration: Build and maintain automated deployment pipelines (Azure DevOps or GitHub Actions) to treat M365 configurations as code.
- Monitoring & Drift Management: Implement automated reporting for configuration drift and ensure the tenant remains in the desired state.
- Security & Compliance: Ensure all automated configurations adhere to security best practices and compliance standards (SOC2, HIPAA, etc.).
- Collaboration: Act as the technical lead for M365 automation, documenting processes and mentoring junior administrators.
Technical Requirements (Required Skills)
1. Advanced PowerShell Development (Expert Level)
- Deep experience in PowerShell Module development.
- Experience with DSC (Desired State Configuration) architecture (LCM, MOF files, Resources).
- Ability to write clean, reusable, and testable code (Pester testing experience is a plus).
- Experience interacting with Microsoft Graph API and RESTful APIs via PowerShell.
2. Microsoft 365 Ecosystem
- Expertise in managing Microsoft 365 workloads: Entra ID (Azure AD), Exchange Online, SharePoint Online, Microsoft Teams, and Intune (Endpoint Manager).
- Strong understanding of M365 authentication models (App Identities, Service Principals, Certificate-based authentication).
3. DevOps & Tooling
- Git: Expert knowledge of version control, branching strategies, and Pull Request (PR) workflows.
- CI/CD: Experience building pipelines in Azure DevOps (YAML) or GitHub Actions.
- Experience with Blueprints and configuration export/import methodologies.
4. Framework Knowledge
- Hands-on experience with the Microsoft365DSC open-source framework.
- Understanding of the ReverseDSC concept and configuration synchronization between tenants.
Preferred Qualifications
- Contributions to open-source projects (specifically Microsoft365DSC or related PowerShell modules).
- Experience with Azure Automation or Azure Functions for running scheduled automation tasks.
- Microsoft Certifications: MS-700 (Teams Admin), MS-102 (M365 Administrator), or AZ-400 (DevOps Engineer).
Candidate Profile
- Problem Solver: You don’t just report a bug in a tool; you find the line of code causing it and submit a fix.
- Automation Mindset: You believe that any task performed more than twice should be automated.
- Communication: Able to explain complex "Configuration as Code" concepts to stakeholders and non-technical managers.ole & responsibilities
Preferred candidate profile