---
title: "AI-500 Study Guide — Multi-Agent AI Solutions Expert (beta)"
description: "An interactive study guide built on 7 memory techniques to help you pass the AI-500 Multi-Agent AI Solutions Expert (beta) exam."
url: "https://lucidlabs.com.au/insights/ai-500"
---

# Master the AI-500

An interactive study guide built on 7 memory techniques to help you pass the AI-500 Multi-Agent AI Solutions Expert (beta) exam.

Architect Multi-Agent Solutions 15-20%Develop Multi-Agent Solutions in Azure 30-35%Evaluate, Optimize & Monitor 20-25%Secure, Govern & Deploy 20-25%

What it covers

Microsoft Foundry Agent Service, Microsoft Agent Framework, Model Context Protocol (MCP), RAG grounding with Azure AI Search, LangGraph orchestration, Azure compute for agent hosting (Container Apps, AKS, Functions), Foundry evaluation and observability, agent security and prompt injection defence, responsible AI governance, and production deployment patterns for multi-agent systems.

Ideal for

AI engineers, developers, and solution architects designing, building, and operating production-grade multi-agent systems on Azure.

Aspire to this if

You're an AI/ML engineer who has shipped single-agent copilots and wants to design production multi-agent systems, or a platform engineer expanding into agentic orchestration, security, and governance.

Section 1 / Spatial Memory

## The Map

Tap any component to see what you need to know for the exam.

**🏭 Microsoft Foundry Agent Service**

Central Hub · Hosted Runtime

**🧩 Microsoft Agent Framework**

Orchestration SDK

**🔌 Model Context Protocol**

Tool & Context Standard

**📚 RAG & Grounding**

Azure AI Search

**🔀 LangGraph**

Stateful Graph Orchestration

**⚙️ Azure Compute for Agents**

ACA · AKS · Functions

**📊 Foundry Evaluation**

Quality & Agentic Evaluators

**🔍 Tracing & Observability**

OpenTelemetry

**💰 Cost & Token Monitoring**

FinOps for Agents

**🛡️ Agent Security**

Identity · Injection Defence

**⚖️ Governance & Agent Registries**

Responsible AI

**🚀 Deployment Patterns**

Blue/Green · Canary

Section 2 / Narrative Memory

## The Story

Follow the narrative to build a mental model of how everything connects.

🏭

### The Foundry Floor

Every multi-agent system in this exam starts on the Foundry Floor -Microsoft Foundry's Agent Service. It hosts threads, runs, and messages so you never have to hand-roll your own agent runtime. Projects group agents, model connections, and deployments under a single governance boundary, and the model catalogue lets you pick the reasoning engine per agent.

**Exam Intel**Agent Service = hosted threads/runs/messages. Foundry project = agents + connections + deployments. Model catalogue: Azure OpenAI, Meta, Mistral, others. SDK: Python, .NET, JS, REST.

🧩

### The Framework Bench

Down one corridor sits the Framework Bench, where the Microsoft Agent Framework lives -the merger of Semantic Kernel's enterprise rigour and AutoGen's multi-agent research. Engineers wire agents from instructions, tools, and memory, then choose an orchestration primitive: sequential for pipelines, concurrent for parallel fan-out, hand-off for delegation, or Magentic group chat for open-ended collaboration.

**Exam Intel**Agent Framework = Semantic Kernel + AutoGen unified. Orchestration primitives: sequential, concurrent, hand-off, group-chat/Magentic. Native MCP support. Hosts on Foundry or standalone.

🔌

### The Protocol Gate

No agent gets far without passing through the Protocol Gate -the Model Context Protocol. MCP standardises how an agent host talks to a tool server: three primitives, tools, resources, and prompts, exposed over stdio or streamable HTTP. Because the protocol decouples tool logic from agent logic, a new MCP server can be plugged in without touching a single line of agent code.

**Exam Intel**MCP = client-server standard. Primitives: tools, resources, prompts. Transports: stdio (local), streamable HTTP (remote). Host manages 1:N clients, each client = 1:1 server connection.

📚

### The Grounding Archive

Facts live in the Grounding Archive. Documents are chunked, embedded, and indexed into Azure AI Search. When an agent needs an answer it can't reason its way to, it retrieves via hybrid search -keyword plus vector- with semantic ranking sharpening the top results before they're injected into the prompt.

**Exam Intel**RAG pipeline: chunk -> embed -> index -> retrieve. Hybrid = BM25 + vector. Semantic ranker re-ranks. Chunking strategy affects grounding quality and token cost. RAG exposed as MCP tool or Foundry knowledge source.

🔀

### The Graph Room

Complex workflows are mapped out in the Graph Room using LangGraph. Every agent or function becomes a node; every transition becomes an edge; a single state object flows through the whole thing and can be checkpointed for long-running jobs. Conditional edges branch to specialists, and human-in-the-loop interrupts pause execution right before a risky tool call fires.

**Exam Intel**LangGraph = stateful graph: nodes + edges + persisted state. Checkpointing for resumable runs. Conditional edges for branching. Human-in-the-loop interrupts before sensitive tool calls.

⚙️

### The Compute Yard

Agents need somewhere to run, and the Compute Yard offers three options. Azure Container Apps scale to zero for stateless agent APIs and MCP servers. AKS hands you full networking and GPU control for heavier topologies. Azure Functions handle lightweight, event-driven tool calls. Dapr building blocks -pub/sub, state store, workflow- stitch distributed agents together on either platform.

**Exam Intel**ACA = serverless, scale-to-zero. AKS = full control, GPU scheduling. Functions = event-driven tools. Dapr Agents/Workflow for distributed coordination. Choose by statefulness + cold-start tolerance.

📊

### The Evaluation Bay

Before anything ships, it stops at the Evaluation Bay. Foundry's evaluators score quality -groundedness, relevance, coherence- and safety -violence, hate, self-harm. Agentic evaluators go further, checking whether the right tool was called with the right arguments, whether the task was actually completed, and whether intent was correctly resolved across the whole conversation.

**Exam Intel**Quality evaluators: groundedness, relevance, coherence. Safety evaluators: violence, hate, self-harm. Agentic evaluators: tool-call accuracy, task adherence, intent resolution. Continuous evaluation on production samples.

🔍

### The Trace Room

A wall of screens in the Trace Room shows every span of every run -OpenTelemetry captures each agent step, tool call, and model invocation. Foundry auto-instruments its own threads and runs, but for agents spread across Container Apps, Functions, and external MCP servers, distributed tracing is the only way to see the whole conversation end to end.

**Exam Intel**OpenTelemetry spans per step/tool call/model call. Foundry auto-instrumentation + Azure Monitor/App Insights. Trace view reconstructs full multi-agent conversation. Distributed tracing across services is essential.

💰

### The Ledger Office

Every token has a price, and the Ledger Office keeps the books. Token spend compounds across agent hand-offs, so cost management surfaces spend by project, deployment, and agent. Prompt caching and retrieval caching trim the bill for repetitive turns, while model routing sends easy questions to a cheap model and escalates only when the task demands it.

**Exam Intel**Token cost compounds across hand-offs. Cost management by project/deployment/agent. Prompt + retrieval caching cut spend. Model routing/cascading balances cost vs quality. Budget alerts + token quotas stop runaway loops.

🛡️

### The Defence Perimeter

No agent gets deployed until it clears the Defence Perimeter. Managed identity replaces hardcoded keys for every service call. Secrets sit in Key Vault. Prompt Shields and input/output filtering catch injection attempts hidden in retrieved documents or tool output -because every MCP tool response is treated as untrusted, no matter how trustworthy the server seems.

**Exam Intel**Managed identity + Entra ID = no hardcoded keys. Key Vault for secrets. Prompt Shields + spotlighting for injection defence. Tool allow-lists scope permissions. Treat MCP tool output as untrusted input.

⚖️

### The Governance Chamber

Every agent is registered before it can act on behalf of the business -the Governance Chamber keeps the catalogue: owner, version, approved use case. Responsible AI review gates apply the same fairness and transparency scrutiny as any AI system, RBAC controls who can grant an agent new tools, and every decision is logged for audit.

**Exam Intel**Agent registry: owner, version, approved use case. RAI review gates: fairness, transparency, accountability. RBAC for tool/data grants. Data classification/residency applies to agents. Audit logging for compliance.

🚀

### The Launch Pad

Finally, the Launch Pad. A risky prompt or tool change goes out as a canary, watched closely through evaluation and tracing before it earns more traffic. A full version or infrastructure swap goes blue/green, with instant rollback if anything regresses. CI/CD pipelines run the evaluation suite as a gate, and feature flags route specific users to experimental agent variants.

**Exam Intel**Canary = small % traffic, watch signals, then expand. Blue/green = parallel new version, cut over when validated. Versioned agent definitions enable instant rollback. CI/CD evaluation gates before promotion. Feature flags for targeted rollout.

Section 3 / Acronym Memory

## Mnemonic Wall

Memorable acronyms and phrases to anchor key exam concepts in your memory.

🏭

TRM

**T**hreads, **R**uns, **M**essages

Foundry Agent Service's core execution objects -a thread holds the conversation, runs execute it, messages are the turns.

🧩

SCHM

**S**equential, **C**oncurrent, **H**and-off, **M**agentic (group chat)

The four orchestration patterns built into Microsoft Agent Framework.

🔌

TRP

**T**ools, **R**esources, **P**rompts

The three primitives every MCP server exposes to an agent host.

📚

CEIR

**C**hunk, **E**mbed, **I**ndex, **R**etrieve

The RAG pipeline, in order, before a grounded answer is generated.

📊

TTIG

**T**ool-call accuracy, **T**ask adherence, **I**ntent resolution, **G**roundedness

Foundry's agentic-specific evaluators for multi-agent, multi-turn runs.

🛡️

IVSS

**I**dentity (managed/Entra ID), **V**ault (Key Vault secrets), **S**hields (Prompt Shields), **S**andbox (tool execution)

Defence-in-depth checklist for securing an agent before production deployment.

Section 4 / Contrast Memory

## Versus Arena

Side-by-side comparisons to sharpen your understanding of similar concepts.

vs

RAGvsFine-Tuning

Click to compare

#### RAG vs Fine-Tuning

| Aspect | RAG | Fine-Tuning |
| --- | --- | --- |
| Purpose | Ground responses in current data | Change the model's style/behaviour |
| Data freshness | Update index anytime, no retrain | Requires retraining for new facts |
| Cost | Indexing + retrieval + extra tokens | Training compute + hosting a custom deployment |
| Latency | Extra retrieval hop per query | No extra hop at inference |
| Best for | Enterprise knowledge, citations, compliance | Domain tone, format, or narrow vocabulary |
| Failure mode | Poor retrieval = poor grounding | Stale facts baked into weights |

Click to flip back

vs

LangGraphvsMicrosoft Agent Framework

Click to compare

#### Orchestration Approaches

| Aspect | LangGraph | Microsoft Agent Framework |
| --- | --- | --- |
| Model | Explicit graph: nodes + edges + state | Declarative patterns: sequential/concurrent/hand-off/group-chat |
| State handling | Persisted state object, checkpointable | Managed by the framework runtime and threads |
| Azure coupling | Framework-agnostic, works anywhere | First-class Foundry Agent Service integration |
| Debugging | Visual graph traversal, explicit branches | Trace-based via OpenTelemetry/Foundry tracing |
| Best for | Complex, branching, long-running workflows | Enterprise apps needing governed, hosted agents |
| Interop | Can host Agent Framework agents as nodes | Can call LangGraph as an external tool/service |

Click to flip back

vs

Single-AgentvsMulti-Agent Architecture

Click to compare

#### Single-Agent vs Multi-Agent

| Aspect | Single-Agent | Multi-Agent Architecture |
| --- | --- | --- |
| Complexity | One instruction set, one tool scope | Multiple specialists, coordination logic |
| Reasoning | Single context window handles everything | Each agent reasons over a narrower context |
| Cost per task | Lower -one model call chain | Higher -orchestration + hand-off overhead |
| Failure isolation | One failure stops the whole task | A failing specialist can be retried/replaced in isolation |
| Best for | Narrow, well-defined tasks | Complex workflows spanning distinct domains |
| Orchestration overhead | None needed | Requires an orchestrator/supervisor agent |

Click to flip back

vs

MCP ServersvsNative Function Calling

Click to compare

#### MCP Servers vs Native Tools

| Aspect | MCP Servers | Native Function Calling |
| --- | --- | --- |
| Definition location | External server, protocol-defined schema | Inline in agent/application code |
| Reusability | Shared across any MCP-compatible agent | Tied to one app/framework |
| Discovery | Agent queries server for available tools | Hardcoded in the agent definition |
| Transport | stdio or streamable HTTP, standardised | In-process function call |
| Best for | Shared tool ecosystems, third-party integrations | Simple, app-specific, low-latency tools |
| Coupling | Loosely coupled -swap servers freely | Tightly coupled to the codebase |

Click to flip back

vs

Blue/GreenvsCanary Deployment

Click to compare

#### Agent Deployment Strategies

| Aspect | Blue/Green | Canary Deployment |
| --- | --- | --- |
| Traffic shift | All-at-once cutover after validation | Gradual % increase over time |
| Risk exposure | Limited to validation window before cutover | Limited to canary cohort throughout rollout |
| Rollback speed | Instant -switch back to old version | Instant -stop routing to canary |
| Observability need | Moderate -validate before cutover | High -continuous signal comparison during rollout |
| Infra cost | Two full environments running briefly | One environment, split traffic |
| Best for | Infra/model version swaps | Risky prompt or tool-behaviour changes |

Click to flip back

Section 5 / Grouping Memory

## Cheat Sheet

Organised reference grouped by exam domain — everything you need on one page.

### Architect Multi-Agent Solutions

15-20%

#### Foundry Agent Service Core

-   Foundry project groups agents, connections, and deployments under one governance boundary
-   Agent objects: threads (conversation), runs (execution), messages (turns)
-   Model catalogue: Azure OpenAI, Meta, Mistral, custom/open models per agent
-   Foundry SDK: Python, .NET, JS clients + REST API for agent lifecycle management

#### Orchestration Patterns

-   Sequential: fixed pipeline, one agent hands off to the next in order
-   Concurrent: fan-out to multiple agents in parallel, fan-in to merge results
-   Hand-off: one agent transfers full control to a specialist agent
-   Group chat / Magentic: multiple agents converse, a manager selects the next speaker

#### Agent Design Principles

-   Single-purpose agents with tightly scoped tools are easier to evaluate and secure
-   Design memory/state explicitly -short-term (thread) vs long-term (external store)
-   Budget the context window: instructions + tool schemas + retrieved context + history
-   Prefer composition of small agents over one monolithic mega-prompt agent

#### Choosing a Framework

-   Microsoft Agent Framework: hosted, governed, Foundry-native orchestration
-   LangGraph: explicit stateful graph for complex branching/long-running workflows
-   Both can interoperate -Agent Framework agents as LangGraph nodes, or vice versa
-   Custom orchestration only when the built-in patterns genuinely do not fit

### Develop Multi-Agent Solutions in Azure

30-35%

#### Model Context Protocol

-   Primitives: tools (functions), resources (data), prompts (templates)
-   Host manages MCP clients; each client holds one connection to one MCP server
-   Transports: stdio (local process), streamable HTTP (remote/hosted server)
-   MCP decouples tool implementation from agent logic for reuse across agents

#### RAG & Grounding

-   Chunking strategies: fixed-size, sentence-based, semantic
-   Azure AI Search: hybrid retrieval (BM25 + vector) with semantic ranking
-   Integrated vectorisation automates chunking + embedding at indexing time
-   Expose RAG as an MCP tool or a native Foundry knowledge source

#### LangGraph & Agent Framework Coding

-   LangGraph: nodes = agents/functions, edges = transitions, state = persisted object
-   Checkpointing enables pausing and resuming long-running multi-agent runs
-   Human-in-the-loop interrupts gate sensitive tool calls for manual approval
-   Hand-off functions in Agent Framework transfer conversation control between agents

#### Azure Compute for Agents

-   Azure Container Apps: scale-to-zero, ideal for stateless agent APIs and MCP servers
-   AKS: full networking/GPU control for complex, high-throughput agent topologies
-   Azure Functions: event-driven, lightweight tool functions
-   Dapr Agents/Workflow: pub/sub, state store, and workflow building blocks for distributed agents

### Evaluate, Optimize & Monitor

20-25%

#### Foundry Evaluation

-   Quality evaluators: groundedness, relevance, coherence
-   Safety evaluators: violence, hate, sexual content, self-harm
-   Agentic evaluators: tool-call accuracy, task adherence, intent resolution
-   Continuous evaluation samples live production traffic to catch drift

#### Observability & Tracing

-   OpenTelemetry spans capture each agent step, tool call, and model invocation
-   Foundry Agent Service auto-instruments threads/runs
-   Route traces to Azure Monitor/Application Insights for centralised analysis
-   Distributed tracing is required once agents span multiple services or external MCP servers

#### Cost & Performance Optimisation

-   Token usage per turn compounds across hand-offs -the dominant cost driver
-   Prompt caching and retrieval caching reduce spend on repetitive turns
-   Model routing/cascading: cheap model first, escalate only when needed
-   Budget alerts and per-agent token quotas guard against runaway loops

#### Reliability

-   Retries with backoff for transient tool/model failures
-   Circuit breakers stop an agent hammering a consistently failing tool
-   Timeout handling prevents a stuck agent blocking the whole workflow
-   Graceful degradation: fall back to a simpler response when a tool is unavailable

### Secure, Govern & Deploy

20-25%

#### Identity & Secrets

-   Managed identity + Entra ID for all agent-to-service authentication
-   Secrets stored in Azure Key Vault, referenced via managed identity
-   Least-privilege scopes per agent -never a broad, shared credential
-   No API keys or connection strings embedded in agent instructions or code

#### Prompt Injection & Content Safety

-   Azure AI Content Safety Prompt Shields detect jailbreak and indirect injection attempts
-   Spotlighting marks untrusted content (retrieved docs, tool output) distinctly from instructions
-   Sandbox tool execution -treat every MCP tool response as untrusted model input
-   Tool/function allow-lists limit blast radius if an agent is manipulated

#### Governance

-   Agent registry tracks owner, version, and approved use case per deployed agent
-   Responsible AI review gates: fairness, transparency, accountability
-   RBAC controls who can create agents or grant new tools/data connections
-   Audit logging of every agent decision and tool call for compliance review

#### Deployment Patterns

-   Blue/green: stand up new version, validate, then cut over traffic
-   Canary: route a small % of traffic to the new version, watch evaluation/tracing signals
-   Versioned agent definitions in Foundry enable instant rollback
-   CI/CD pipelines gate promotion on passing the evaluation suite

Section 6 / Method of Loci

## The Memory Palace

Walk through themed rooms — each object anchors a concept in spatial memory.

### The Foundry Control Room

Architect -Where agents and orchestration are designed

🏭

Foundry Agent Service

Hosted threads, runs, and messages. Projects group agents, connections, and deployments

🧩

Microsoft Agent Framework

Semantic Kernel + AutoGen unified. Agents = instructions + tools + memory + model client

🕸️

Orchestration Patterns

Sequential, concurrent, hand-off, group-chat/Magentic -pick based on task shape

📇

Model Catalogue

Azure OpenAI, Meta, Mistral, custom models -pick the reasoning engine per agent

✅

Agent Design Checklist

Single-purpose scope, explicit memory design, context window budget

### The Protocol Workshop

Develop -Where agents connect to tools and data

🔌

MCP Client / Server / Host

Tools, resources, prompts over stdio or streamable HTTP

📚

RAG Pipeline

Chunk -> embed -> index (Azure AI Search) -> hybrid + semantic retrieve

🔀

LangGraph State Machine

Nodes, edges, persisted state, checkpointing, human-in-the-loop interrupts

⚙️

Azure Compute Options

Container Apps (scale-to-zero), AKS (full control), Functions (event-driven)

🔗

Dapr Agents

Pub/sub, state store, workflow building blocks for distributed agent coordination

### The Diagnostics Lab

Evaluate, Optimize & Monitor -Where agent behaviour is measured

📊

Foundry Evaluators

Quality (groundedness, relevance, coherence) + agentic (tool-call, task adherence, intent)

🔍

OpenTelemetry Tracing

Span per step/tool call/model call. Full multi-agent conversation reconstruction

💰

Token & Cost Dashboard

Spend by project/agent/deployment. Budget alerts and per-agent quotas

🔀

Model Router

Cheap model first, escalate to a larger model only when needed

🧯

Reliability Patterns

Retries with backoff, circuit breakers, timeouts, graceful degradation

### The Compliance Vault

Secure, Govern & Deploy -Where agents earn production trust

🔑

Managed Identity & Key Vault

Entra ID auth, no hardcoded keys, secrets referenced not embedded

🛡️

Prompt Shields & Content Safety

Injection detection, spotlighting untrusted content, sandboxed tool execution

📋

Agent Registry & RBAC

Owner, version, approved use case per agent. Role-gated tool/data grants

🐤

Blue/Green & Canary Releases

Validated cutover or gradual traffic shift, gated by evaluation signals

🧾

Audit Logging

Every agent decision and tool call logged for compliance and incident review

Section 7 / Pattern Recognition

## Pattern Spotter

Decision trees and trigger-answer pairs — see the pattern, know the answer.

Which Orchestration Pattern?

Which Orchestration Pattern?  
  ├── Independent tasks with no ordering dependency → Concurrent (fan-out / fan-in)  ├── Strict step-by-step pipeline → Sequential  ├── One agent delegates a sub-task fully to a specialist → Hand-off  ├── Multiple specialists must converse and reach consensus → Group Chat / Magentic  └── Complex branching logic needing persisted, resumable state → LangGraph Graph

Which Azure Compute for This Agent?

Which Azure Compute for This Agent?  
  ├── Stateless HTTP API, need scale-to-zero → Azure Container Apps  ├── Need GPU scheduling or full network control → Azure Kubernetes Service (AKS)  ├── Event-driven, lightweight tool function → Azure Functions  └── Need Dapr pub/sub or workflow for distributed coordination → ACA/AKS + Dapr Agents

RAG or Fine-Tune?

RAG or Fine-Tune?  
  ├── Knowledge changes frequently or needs citations → RAG  ├── Need to permanently change the model's style or format → Fine-Tuning  ├── Need both fresh facts and a controlled tone → RAG + light fine-tune / few-shot prompting  └── Small, static, domain-specific vocabulary → Fine-Tuning

Which Deployment Strategy for an Agent Update?

Which Deployment Strategy for an Agent Update?  
  ├── High-risk prompt or tool behaviour change → Canary (small % traffic first)  ├── Model or infrastructure version swap → Blue/Green  ├── Need instant, full rollback capability → Blue/Green  └── Testing with a specific user segment or scenario → Feature Flag Routing

## Decision Cards

"Model Context Protocol" or "MCP server"→Standard client-server protocol exposing tools/resources/prompts to agents

"tool", "resource", "prompt" primitives→The three primitives an MCP server exposes to a host

"hand-off" pattern→One agent transfers full control of the conversation to a specialist agent

"group chat" or "Magentic"→Multiple agents converse; a manager/orchestrator agent selects the next speaker

"LangGraph" or "stateful graph"→Nodes = agents/functions, edges = transitions, explicit persisted state

"groundedness" or "task adherence" evaluator→Foundry agentic evaluators scoring RAG grounding and multi-turn task completion

"tool-call accuracy" or "intent resolution"→Agentic evaluators checking whether the right tool was called with the right args

"Prompt Shields" or "prompt injection"→Content Safety feature detecting jailbreak/indirect prompt injection attacks

"canary release" for an agent→Route a small % of production traffic to the new agent version first

"token budget" or "runaway loop"→Set per-agent token quotas and budget alerts to cap cost and prevent infinite retries

Ready to certify?

## Train with practitioners, not presenters

Lucid Labs delivers Microsoft certification training led by Microsoft Certified Trainers (MCTs) and grounded in real-world project experience. We adapt every session to your team's environment, data stack, and business objectives — because the best exam prep comes from engineers who build these solutions every day.

🎯

Tailored Content

Training built around your actual agentic AI workloads, your Azure environment, and your Foundry deployment patterns -not generic slides.

🛠️

Hands-On Labs

Build real multi-agent systems with Microsoft Foundry, MCP servers, and LangGraph orchestration under expert guidance.

📈

Exam + Capability

Pass the exam and build lasting production multi-agent engineering skills your team can apply from day one.

[Talk to us about Multi-Agent AI Solutions Expert (AI-500, beta) training](https://lucidlabs.com.au/?service=training-consulting&message=I%27m%20interested%20in%20Multi-Agent%20AI%20Solutions%20\(AI-500\)%20training%20for%20my%20team.#contact)

Custom training for teams & individuals — remote or on-site across Australia

![Keith Oak](https://lucidlabs.com.au/team/koak-400.jpg)

Keith Oak

Chief Technology Officer — Lucid Labs

Microsoft Solutions Partner architect specialising in Fabric, Azure Data & AI, and GitHub Enterprise. 18+ years delivering data platforms for Australian businesses — building the systems these exams test every day.

[LinkedIn ↗](https://www.linkedin.com/in/keithoak/)[lucidlabs.com.au ↗](https://lucidlabs.com.au/)Published 29-03-2026
