CCDV-F Course Overview
Claude Certified Developer – Foundations. Blueprint, audience, study allocation and how to use this course.
What the credential validates
That you can build, integrate and operate applications and agents on Claude using the API, SDKs and developer tooling: calling the Messages API correctly, selecting and optimising models for cost and latency, designing agentic loops and workflows, engineering prompts and context, wiring up tools and MCP servers, applying security and safety controls, working effectively in Claude Code, and evaluating, testing and debugging what you ship.
Intended for: software developers and engineers who write code against the Anthropic API and SDKs, build agents, author MCP servers, and integrate Claude into applications and pipelines. Comfortable with REST, JSON, async programming, and version control.
Not intended for: non-technical business users (see CCAO-F) or those designing enterprise-scale multi-agent architectures and governance programmes (see CCAR-F / CCAR-P).
Blueprint (Exam Guide v1.0, July 2026)
| # | Domain | Weight | Items (approx.) | Course page |
|---|---|---|---|---|
| 1 | Applications and Integration | 33.1% | ~18 | Domain 1 |
| 2 | Model Selection and Optimization | 16.8% | ~9 | Domain 2 |
| 3 | Agents and Workflows | 14.7% | ~8 | Domain 3 |
| 4 | Prompt and Context Engineering | 11.0% | ~6 | Domain 4 |
| 5 | Tools and MCPs | 10.6% | ~5 | Domain 5 |
| 6 | Security and Safety | 8.1% | ~4 | Domain 6 |
| 7 | Claude Code | 3.1% | ~2 | Domain 7 |
| 8 | Eval, Testing and Debugging | 2.6% | ~1 | Domain 8 |
Where the marks are
Applications and Integration (33.1%) alone is a third of the exam. Together with Model Selection (16.8%) and Agents and Workflows (14.7%), the top three domains are 64.6% of the exam. Master the Messages API cold – request/response anatomy, stop_reason handling, streaming, prompt caching, batching, errors and retries – before anything else.
The Developer’s mindset
The exam repeatedly rewards one posture: build systems that are correct, observable and cost-aware, and that drive control flow from the API’s structured signals rather than from natural-language guesses. Correct answers tend to:
- Drive the agentic loop from
stop_reason(especiallytool_use), never by parsing prose or capping iterations arbitrarily. - Enforce critical rules programmatically (hooks, validation, schemas) instead of trusting prompt instructions.
- Handle errors explicitly, log request IDs, and retry
429/5xx/529with exponential backoff and jitter, respectingretry-after. - Choose the cheapest model that meets quality, then use caching, batching and routing to cut cost and latency.
- Pin model snapshots, version prompts, and keep secrets out of prompts and
CLAUDE.md. - Validate structured output against a schema and retry on failure rather than trusting confident text.
Wrong answers tend to: parse natural language for loop termination, cap iterations as the primary stop mechanism, enforce business rules in the prompt, trust self-reported confidence, hide diagnostic context in generic errors, swallow errors as empty success, overload agents with too many tools, and self-review in the same session.
Suggested time allocation (30-hour plan)
| Domain | Weight | Hours |
|---|---|---|
| Applications and Integration | 33.1% | 10 |
| Model Selection and Optimization | 16.8% | 5 |
| Agents and Workflows | 14.7% | 4.5 |
| Prompt and Context Engineering | 11.0% | 3.5 |
| Tools and MCPs | 10.6% | 3 |
| Security and Safety | 8.1% | 2.5 |
| Claude Code | 3.1% | 1 |
| Eval, Testing and Debugging | 2.6% | 0.5 |
Hands-on preparation checklist
- Send a Messages API request in both Python (
anthropic) and TypeScript (@anthropic-ai/sdk); inspect the full response object andusage. - Implement streaming and handle every SSE event type; render tokens as they arrive.
- Build a tool-use loop that terminates on
stop_reasonand handlestool_use,end_turn,pause_turnandmax_tokens. - Add prompt caching with
cache_controland measure the cost delta on cache hits. - Submit a Message Batch and poll it to completion; compare cost to synchronous calls.
- Add retry with exponential backoff + jitter honouring
retry-after; force a429to test it. - Request structured output via
output_config.formatwith a JSON schema and add validation-retry. - Author a minimal MCP server in Python (FastMCP) and connect it in Claude Desktop and Claude Code.
- Write a PreToolUse hook that blocks a dangerous command (exit code 2).
- Pin a model snapshot, then dry-run a migration to a newer model and note breaking changes.
Course pages
D1 · Applications and Integration
D2 · Model Selection and Optimization
D3 · Agents and Workflows
D4 · Prompt and Context Engineering
D5 · Tools and MCPs
D6 · Security and Safety
D7 · Claude Code
D8 · Eval, Testing and Debugging
Practice Exam 1
Practice Exam 2
Last updated Sep 18, 2026