# Claude Certified Architect – Foundations: 4-Week Study Plan

**Exam date target:** ~2026-05-15 (4 weeks from 2026-04-17)
**Pass mark:** 720 / 1000 · **Format:** scenario-based multiple choice (4 of 6 scenarios)

## Domain weights (study time should roughly match)

| Domain | Weight | Hours budget |
|---|---|---|
| 1. Agentic Architecture & Orchestration | 27% | ~22h |
| 2. Tool Design & MCP Integration | 18% | ~15h |
| 3. Claude Code Configuration & Workflows | 20% | ~16h |
| 4. Prompt Engineering & Structured Output | 20% | ~16h |
| 5. Context Management & Reliability | 15% | ~12h |
| **Total study** | | **~80h** (≈3h/day) |

---

## Core resources (bookmark these)

1. **Official exam guide PDF** (this folder) — the source of truth. Every task statement is a potential question.
2. **Anthropic Skilljar: Claude Certified Architect – Foundations** (https://anthropic.skilljar.com/...) — request access immediately; this is the official prep course.
3. **claudecertificationguide.com** — community study guide.
4. **paullarionov/claude-certified-architect** (GitHub) — practice questions / notes.
5. **daronyondem/claude-architect-exam-guide** (GitHub) — exam guide annotations and flashcards.
6. **Anthropic docs** — Agent SDK, Claude Code, MCP, Messages API, tool use, batch API.

---

## Week 1 — Foundations + Domain 1 (Agentic Architecture, 27%)

**Goal:** understand the agentic loop and be able to build a coordinator–subagent system from scratch.

**Read / watch**
- Exam guide Domain 1 (all 7 task statements) — re-read daily until fluent.
- Anthropic docs: "Building effective agents", Agent SDK quickstart, tool use loop.
- Skilljar Module 1 (if available).

**Hands-on (must do)**
- [ ] Build a single-agent loop from scratch using the Messages API: inspect `stop_reason`, handle `"tool_use"` vs `"end_turn"`, append tool results to history.
- [ ] Build a coordinator + 2 subagents using the Agent SDK `Task` tool. Confirm `allowedTools` includes `"Task"`.
- [ ] Implement one `PostToolUse` hook that normalizes a tool result (e.g., unix timestamp → ISO 8601).
- [ ] Practice `--resume <session>` and `fork_session` on a real project.

**Key concepts to lock in** (expect direct questions)
- Loop termination: `stop_reason == "end_turn"` (NOT parsing text, NOT iteration caps).
- Subagents do **not** inherit parent context — must pass explicitly in the prompt.
- Hub-and-spoke: all inter-agent comms route through coordinator.
- Programmatic enforcement (hooks/gates) beats prompt-based guidance when compliance is required.
- Narrow decomposition by coordinator = incomplete coverage (see Sample Q7).

---

## Week 2 — Domain 2 (Tool Design & MCP, 18%) + Domain 3 (Claude Code Config, 20%)

**Goal:** design tools an LLM can actually pick correctly, and configure Claude Code the way a senior engineer would.

**Read**
- Exam guide Domains 2 and 3 (every task statement).
- MCP spec overview + Claude Code MCP docs.
- Claude Code docs: CLAUDE.md hierarchy, `.claude/commands/`, `.claude/skills/`, `.claude/rules/`, plan mode, `/compact`, `/memory`.

**Hands-on**
- [ ] Write 3 tool descriptions for similar tools (e.g., `get_customer`, `lookup_order`, `lookup_entity`) — make each unambiguously selectable. Test by asking Claude which to call for 10 sample user queries.
- [ ] Implement structured MCP errors with `errorCategory`, `isRetryable`, `retriable: false` for a business rule.
- [ ] Configure a project-scoped `.mcp.json` using `${GITHUB_TOKEN}` env expansion.
- [ ] Set up a CLAUDE.md hierarchy: user-level (`~/.claude/CLAUDE.md`), project-level, and a `.claude/rules/testing.md` with `paths: ["**/*.test.tsx"]`.
- [ ] Create a project-scoped `/review` slash command in `.claude/commands/`.
- [ ] Create a skill with `context: fork` and `allowed-tools` frontmatter.
- [ ] Run Claude Code headlessly: `claude -p "..." --output-format json --json-schema <schema>`.

**Key concepts**
- `tool_choice`: `"auto"` / `"any"` / forced `{"type":"tool","name":"..."}`.
- Too many tools (18 vs 4–5) degrades selection reliability.
- `.claude/rules/` with glob paths > subdirectory CLAUDE.md for cross-cutting conventions (Sample Q6).
- Project `.claude/commands/` = shared via VCS; user `~/.claude/commands/` = personal (Sample Q4).
- Plan mode for architectural changes; direct execution for well-scoped edits (Sample Q5).

---

## Week 3 — Domain 4 (Prompt Engineering & Structured Output, 20%) + Domain 5 (Context & Reliability, 15%)

**Goal:** produce reliable structured output at scale; manage long-running agents without context rot.

**Read**
- Exam guide Domains 4 and 5.
- Anthropic docs: tool use for structured output, Message Batches API, prompt caching.

**Hands-on**
- [ ] Build a JSON-schema extraction tool. Test `tool_choice: "auto"` vs `"any"` vs forced. Break it with ambiguous docs; fix with 2–4 few-shot examples.
- [ ] Implement retry-with-error-feedback: append validation errors to the retry prompt.
- [ ] Add `detected_pattern` + `calculated_total` vs `stated_total` fields to surface semantic errors.
- [ ] Submit a batch job with `custom_id` fields; handle partial failures by resubmitting only failed IDs.
- [ ] Build an independent review pass: one Claude instance generates, a **separate** instance reviews (no shared reasoning context).
- [ ] Use scratchpad files + `/compact` for a multi-hour codebase exploration session.
- [ ] Design a structured escalation handoff (customer ID, root cause, recommended action).

**Key concepts**
- Self-review fails because the generator retains reasoning context — use an independent instance.
- Explicit categorical criteria beat vague "be conservative" prompts.
- Few-shot = most effective fix for inconsistent output.
- Batches: 50% cheaper, up to 24h SLA, **no multi-turn tool use**.
- "Lost in the middle": put key findings at the start/end of long inputs.
- Escalate on explicit request OR policy gap — NOT on sentiment or self-reported confidence (Sample Q3).

---

## Week 4 — Scenario drills + mock exams + weak-area patching

**Goal:** recognize the answer pattern in < 30 seconds per question.

**Daily routine (Mon–Fri)**
1. **Morning (1h):** drill one scenario end-to-end. Write down, in your own words, the 3 most likely question patterns. Scenarios:
   - Mon: Customer Support Resolution Agent
   - Tue: Code Generation with Claude Code
   - Wed: Multi-Agent Research System
   - Thu: Developer Productivity + CI/CD (combine, both touch Claude Code)
   - Fri: Structured Data Extraction
2. **Afternoon (1h):** practice questions from paullarionov and daronyondem GitHub repos.
3. **Evening (1h):** revisit the weakest task statement from the day.

**Weekend**
- Take a full-length mock exam (Skilljar practice test if available, else self-built from exam guide task statements).
- Review every wrong answer; map it back to the specific task statement; write a one-line rule in `NOTES.md`.

**Day before exam**
- Re-read the exam guide PDF cover to cover (it's only ~30 pages).
- Skim your `NOTES.md` one-line rules.
- Sleep. Don't cram new material.

---

## Recurring answer patterns to memorize (from the sample questions)

These show up repeatedly — internalize them:

1. **When compliance matters → programmatic enforcement (hooks/gates), not prompts.** (Q1)
2. **Tool-selection issues → fix tool descriptions first**, before adding routing layers or consolidating tools. (Q2)
3. **Escalation → explicit criteria + few-shot**, never sentiment or self-reported confidence. (Q3)
4. **Team-shared config → project-scoped `.claude/`**; personal → `~/.claude/`. (Q4)
5. **Architectural / multi-file work → plan mode first.** (Q5)
6. **Conventions spread across the codebase → `.claude/rules/` with `paths:` globs**, not subdirectory CLAUDE.md. (Q6)
7. **Coverage gaps in multi-agent output → coordinator decomposition is the root cause**, not downstream agents. (Q7)
8. **Error propagation → structured error context** (failure type, attempted query, partial results), never generic status or silent suppression. (Q8)
9. **Frequent cross-agent round-trips for simple cases → give a scoped tool to the agent that needs it** (e.g., `verify_fact` on synthesis). (Q9)

---

## Progress tracker

Mark week by week:

- [ ] Week 1: Domain 1 complete, coordinator+subagent demo working
- [ ] Week 2: Domains 2 & 3 complete, MCP + CLAUDE.md hierarchy configured
- [ ] Week 3: Domains 4 & 5 complete, extraction pipeline + batch job working
- [ ] Week 4: 2 full mock exams scored ≥ 80%, weak areas patched
- [ ] Exam booked and passed
