AI Cert Prep
Type to search documentation.

CCDV-F Course Overview

Claude Certified Developer – Foundations. Blueprint, audience, study allocation and how to use this course.

Exam code CCDV-F 53 items · 120 min $125 Pass 720/1000

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)

#DomainWeightItems (approx.)Course page
1Applications and Integration33.1%~18Domain 1
2Model Selection and Optimization16.8%~9Domain 2
3Agents and Workflows14.7%~8Domain 3
4Prompt and Context Engineering11.0%~6Domain 4
5Tools and MCPs10.6%~5Domain 5
6Security and Safety8.1%~4Domain 6
7Claude Code3.1%~2Domain 7
8Eval, Testing and Debugging2.6%~1Domain 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 (especially tool_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/529 with exponential backoff and jitter, respecting retry-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)

DomainWeightHours
Applications and Integration33.1%10
Model Selection and Optimization16.8%5
Agents and Workflows14.7%4.5
Prompt and Context Engineering11.0%3.5
Tools and MCPs10.6%3
Security and Safety8.1%2.5
Claude Code3.1%1
Eval, Testing and Debugging2.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 and usage.
  • Implement streaming and handle every SSE event type; render tokens as they arrive.
  • Build a tool-use loop that terminates on stop_reason and handles tool_use, end_turn, pause_turn and max_tokens.
  • Add prompt caching with cache_control and 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 a 429 to test it.
  • Request structured output via output_config.format with 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

Last updated Sep 18, 2026