Skip to main content

AZ-400 exam tips and strategy

Exam format

  • 40-60 questions (multiple choice, drag-and-drop, case studies, labs)
  • ~120 minutes (some candidates report getting 150 min)
  • Passing score: 700/1000
  • Questions come from all 5 domains, but ~50% will be from Domain 3 (pipelines)
  • Lab questions may require you to perform tasks in Azure DevOps or Azure Portal

Top strategies

1. Know YAML syntax cold

The exam will show you pipeline YAML and ask you to:

  • Identify errors
  • Choose the correct trigger/stage/job configuration
  • Complete missing sections

You need to write YAML from memory, not just recognize it.

2. Think dual-platform

Every concept has two implementations:

  • GitHub Actions ↔ Azure Pipelines
  • GitHub Packages ↔ Azure Artifacts
  • GitHub Advanced Security ↔ Azure DevOps extensions
  • GitHub Projects ↔ Azure Boards

The exam tests whether you know both and when to choose each.

3. Security is a common fail area

Candidates often lose points on:

  • Workload identity federation vs service principals vs managed identities
  • When to use GITHUB_TOKEN vs PAT vs GitHub App
  • Secretless authentication patterns (OIDC)
  • Pipeline permissions and least-privilege

4. DORA metrics appear frequently

Know the four key metrics:

  • Deployment frequency — How often you deploy to production
  • Lead time for changes — Time from commit to production
  • Mean time to recovery (MTTR) — Time to restore service after incident
  • Change failure rate — % of deployments causing failures

5. Deployment strategies matter

Be able to explain trade-offs between:

  • Blue-green (instant rollback, double infrastructure cost)
  • Canary (gradual, requires traffic splitting)
  • Ring-based (progressive exposure by audience)
  • Feature flags (code-level, independent of deployment)

YAML gotchas reference

GitHub Actions common errors

# WRONG: trigger syntax
on:
push:
branch: main # Should be "branches: [main]"

# WRONG: missing "uses" prefix
steps:
- checkout@v4 # Should be "uses: actions/checkout@v4"

# WRONG: env vs secrets
env:
TOKEN: ${{ secrets.MY_TOKEN }} # Correct for secrets
TOKEN: ${{ env.MY_TOKEN }} # This reads environment variable, not secret

# WRONG: job dependency
jobs:
deploy:
needs: [build] # Correct
need: build # Wrong key name

Azure Pipelines common errors

# WRONG: stage vs stages
stage: # Should be "stages:"
- stage: Build

# WRONG: pool syntax
pool: ubuntu-latest # Should be "pool: { vmImage: 'ubuntu-latest' }"

# WRONG: variable reference
variables:
myVar: 'hello'
steps:
- script: echo $myVar # Linux only
- script: echo $(myVar) # Correct for Azure Pipelines
- script: echo ${{ variables.myVar }} # Compile-time expression

# WRONG: template reference
template: templates/build.yml # Should be under "extends:" or in "steps:"

Key differences to memorize

ConceptGitHub ActionsAzure Pipelines
CI file location.github/workflows/*.ymlRoot or specified path
Trigger keywordon:trigger: / pr:
Job runnerruns-on:pool:
Stepsuses: / run:task: / script:
Secrets access${{ secrets.NAME }}$(NAME) (from variable group/Key Vault)
Reusable workflowsuses: org/repo/.github/workflows/x.yml@maintemplate: path/to/template.yml
Environmentsenvironment: with protection rulesenvironment: with checks/approvals
Artifacts uploadactions/upload-artifact@v4PublishBuildArtifacts@1 task
Cachingactions/cache@v4Cache@2 task
Matrix strategystrategy: { matrix: {} }strategy: { matrix: {} } (same!)

Time management

SectionSuggested timeNotes
First pass (all questions)80 minAnswer what you know, flag rest
Second pass (flagged)30 minFocus on scenario questions
Lab section (if present)20-30 minUsually 1-2 lab tasks
Review10 minCheck flagged answers

Domain-specific tips

Domain 1: Processes (10-15%)

  • Know the difference between GitHub Projects (v2) and Azure Boards
  • Understand how to link commits to work items (AB#123 syntax in Azure DevOps)
  • Know webhook payload formats and when to use them

Domain 2: Source control (10-15%)

  • git filter-repo is the recommended tool for removing sensitive data (not filter-branch)
  • Understand Scalar for large repos (GVFS protocol)
  • Know the difference between CODEOWNERS in GitHub vs branch policies in Azure DevOps

Domain 3: Pipelines (50-55%)

  • This is HALF the exam — spend proportional study time
  • Know how to configure parallel jobs and agent pools
  • Understand the difference between dependsOn and condition
  • Multi-stage pipelines: know stage → job → step hierarchy
  • Classic-to-YAML migration is testable

Domain 4: Security (10-15%)

  • Workload identity federation (OIDC) is the modern best practice — know it well
  • GitHub Advanced Security: CodeQL + secret scanning + Dependabot = the trio
  • Microsoft Defender for Cloud DevOps Security connects GitHub/ADO to Defender

Domain 5: Instrumentation (5-10%)

  • Know how to create deployment annotations in Application Insights
  • KQL basics: where, summarize, render, ago(1h)
  • Understand the difference between VM Insights, Container Insights, and App Insights

Resources

ResourceLink
AZ-400 study guideaka.ms/AZ400-StudyGuide
Exam prep videosExam Readiness Zone
Free practice assessmentPractice questions
GitHub Actions docsdocs.github.com/actions
Azure Pipelines docslearn.microsoft.com/azure/devops/pipelines