Confluent · CCDAK
Validates proficiency in building applications with Apache Kafka, covering Kafka fundamentals, application development using producer and consumer APIs, Kafka Streams, Kafka Connect, testing, and observability.
Practice Questions
624
≈ 10 practice exams
Duration
90 minutes
Passing Score
70%
Difficulty
AssociateLast Updated
Sep 2026
Confluent's current CCDAK blueprint weights six sections: Apache Kafka Application Development at 28%, Kafka Fundamentals at 23%, Kafka Connect at 15%, Application Observability at 13%, Kafka Streams at 12%, and Application Testing at 8%. Development and Fundamentals together are more than half the exam, so producer and consumer configuration, delivery semantics, serialization, and partition mechanics deserve most of your prep time. This practice bank of 624 questions is built to match that split, so client-code and core-architecture scenarios get real depth while Connect, Streams, observability, and testing still get full coverage. Note what Confluent explicitly puts out of scope: ksqlDB, RBAC, Confluent for Kubernetes, networking, and cluster administration.
Test-day mechanics: the CCDAK is a 90-minute online proctored exam that you can sit remotely. Confluent does not publish an official question count or a numeric cut score; results come back as pass or fail, shown on screen immediately when you finish, and candidates commonly report somewhere in the 55-60 question range. The format goes beyond plain multiple choice: Confluent lists multiple-choice, multiple-response, matching, and build-list (ordering) items, so expect to drag steps of a process into sequence, not just pick A through D. Every question offers four or more options, and distractors are written to catch partial knowledge of configs like acks, auto.offset.reset, and processing guarantees.
There are no formal prerequisites, but Confluent's exam guide assumes fluency in a language such as Java, Python, or C#, plus hands-on comfort with client configuration, schema evolution, SerDes, and deploying Kafka applications; Confluent has historically recommended 6-12 months of real Kafka experience. The exam costs $150 USD, the certification is valid for two years, and recertifying means passing the current exam again; a failed attempt can be repurchased and retaken after a 7-day wait. Start with the 30 free questions, then work through the full 624-question bank until your accuracy holds steady across all six domains.
The Confluent Certified Developer for Apache Kafka (CCDAK) is a vendor-issued certification from Confluent — the company founded by the original creators of Apache Kafka — that validates a developer's ability to build, deploy, and maintain production-grade applications on the Kafka platform. The exam covers the full spectrum of Kafka application development: core architecture, the Producer and Consumer APIs, Kafka Streams for real-time stream processing, Kafka Connect for data integration, Schema Registry with Avro serialization, and application testing and observability practices.
The certification is positioned at the associate level and reflects hands-on proficiency rather than surface-level familiarity. It tests knowledge of delivery semantics (at-most-once, at-least-once, and exactly-once), partition and offset management, serialization strategies, connector configuration, and stream processing topology design. The exam was last updated to align with the current Confluent Platform and covers both Apache Kafka open-source features and Confluent-specific components such as Confluent Schema Registry and ksqlDB basics.
The CCDAK is aimed at software developers, backend engineers, and solutions architects who work with Kafka-based event streaming systems in professional environments. Ideal candidates have 6–12 months of hands-on experience working with Apache Kafka or Confluent Platform and are comfortable reading and writing code in Java, Python, or through RESTful interfaces.
This certification is particularly relevant for engineers building real-time data pipelines, event-driven microservices, or stream processing applications at companies in finance, healthcare, technology, and media — industries where Kafka is commonly deployed at scale. It is also a strong credential for architects who design Kafka-based solutions and need to validate their technical depth to employers or clients.
Confluent does not enforce formal prerequisites for the CCDAK, but the exam assumes 6–12 months of practical experience with Apache Kafka or Confluent Platform. Candidates should be comfortable with core distributed systems concepts — topics, partitions, replication, brokers, and consumer groups — before attempting the exam.
Proficiency in at least one of Java, Python, or a RESTful API client is recommended, as the exam tests application-level knowledge of the Kafka client libraries. Familiarity with the Confluent Schema Registry, Avro serialization, and basic stream processing concepts will also be beneficial. No formal training course or prior Confluent certification is required.
The CCDAK consists of 55 multiple-choice and multiple-select questions delivered in a 90-minute timed session. The exam is fully remote and proctored online, and can be taken from any location worldwide that meets Confluent's internet connectivity, security, and privacy requirements; in-person testing center options are also available globally. The exam costs $150 USD and is valid for two years from the date of passing.
The passing threshold is 70%. Results are provided immediately upon completion. The exam does not include unscored pilot questions in its published format. There is no partial credit on multiple-select questions.
Earning the CCDAK signals verified, hands-on competence to employers in a market where Apache Kafka has become the de facto standard for real-time event streaming. Major technology companies — including Netflix, Uber, Spotify, LinkedIn, and thousands of financial services firms — operate Kafka at scale, creating sustained demand for certified Kafka developers. As of 2024, the average annual salary for Kafka developers in the United States is approximately $125,000, with senior roles and architects earning substantially more. In Europe, salaries range from roughly €57,500–€82,500 in Germany and £70,000–£80,000 in the UK.
The certification is issued by Confluent, the company founded by Kafka's original creators, which gives it strong industry credibility compared to third-party Kafka credentials. It differentiates candidates in hiring processes, supports salary negotiation, and can serve as a stepping stone toward the Confluent Certified Operator for Apache Kafka (CCOAK) or solutions architect roles leading event-driven architecture initiatives. The credential is valid for two years, requiring renewal to stay current with the evolving platform.
5 sample questions with answers and explanations. The full bank has 624 questions, enough for 10 full-length practice exams.
Preview — answers shown1. A development team implements a custom Partitioner class to route messages from premium customers to partition 0 while distributing other customers using the default hash-based partitioning. Which method must the custom Partitioner implement? (Select one!)
Explanation
Custom partitioners must implement the Partitioner interface which requires the partition method with signature: partition(String topic, Object key, byte[] keyBytes, Object value, byte[] valueBytes, Cluster cluster). This method receives the topic name, key object and bytes, value object and bytes, and cluster metadata, returning an integer partition number. The other method signatures are not part of the Kafka Partitioner interface. Custom partitioners provide full control over partition assignment logic based on message content and cluster topology.
2. A producer application experiences intermittent network failures. The development team configures enable.idempotence=true to prevent duplicates during retries. Which three configurations are automatically enforced when idempotence is enabled? (Select three!)
Multiple correct answersExplanation
When enable.idempotence=true, Kafka automatically enforces three requirements: acks must be set to all (or -1) to ensure full ISR acknowledgment, retries must be greater than 0 to allow retry attempts, and max.in.flight.requests.per.connection must be less than or equal to 5 to maintain ordering guarantees. These settings ensure the producer can safely retry failed sends without creating duplicates. Compression type is independent of idempotence and remains a performance optimization choice. Buffer memory size does not affect idempotence guarantees. Batch size is a throughput optimization parameter unrelated to idempotence requirements.
3. A topic is configured with log.cleanup.policy=delete, retention.ms=604800000, and retention.bytes=10737418240. The topic has 4 partitions and receives 500 MB of data per day evenly distributed across partitions. When will data deletion occur? (Select one!)
Explanation
When both retention.ms and retention.bytes are configured, Kafka applies whichever limit is reached first on a per-partition basis. The retention.bytes value of 10 GB is per-partition (not per-topic), so each partition can hold up to 2.5 GB before size-based deletion occurs. With 500 MB per day distributed across 4 partitions, each partition receives 125 MB daily and reaches 2.5 GB after 20 days. However, time-based retention of 7 days will trigger first, deleting segments older than 7 days. The retention policies work independently with an OR relationship, not requiring both conditions to be met simultaneously. Understanding retention mechanics is critical for capacity planning and ensuring data availability for required time periods.
4. A Kafka Streams developer implements a windowed count aggregation and wants to emit only the final result when each window closes, avoiding intermediate updates. The application uses TimeWindows.ofSizeAndGrace(Duration.ofHours(1), Duration.ofMinutes(5)). Which combination of operations achieves this requirement? (Select two!)
Multiple correct answersExplanation
The suppress operator with untilWindowCloses delays emission until both the window end time and grace period have passed, ensuring only final results are emitted. Using unbounded() allows unlimited buffering until window closure, while maxRecords or maxBytes provides bounded buffering with specific limits. Both approaches correctly implement the suppression requirement. The commit interval controls state store flushing to disk but does not suppress downstream emissions. Using untilTimeLimit creates time-based suppression unrelated to window boundaries and would emit results after the time limit rather than window closure. Topology optimization performs query optimizations but does not automatically add suppression behavior.
5. A developer configures a Kafka topic using kafka-topics.sh with --create --topic metrics --partitions 8 --replication-factor 3. After several months, increased traffic requires expanding to 12 partitions. Which kafka-topics.sh command correctly modifies the partition count? (Select one!)
Explanation
The kafka-topics.sh tool with --alter command can increase partition counts for existing topics. The correct syntax requires --bootstrap-server, --alter, --topic, and --partitions with the new partition count. Kafka only supports increasing partition counts, never decreasing, because decreasing would require reassigning or deleting existing data. The replication factor cannot be modified using kafka-topics.sh and must remain at the originally configured value. Deleting and recreating the topic would result in complete data loss, which is unacceptable for production systems. There is no --reassign-partitions flag in kafka-topics.sh; partition reassignment uses the separate kafka-reassign-partitions.sh tool for changing replica assignments across brokers.
Confluent does not publish an official question count. Candidates commonly report roughly 55-60 questions in the 90-minute sitting, in a mix of multiple-choice, multiple-response, matching, and build-list formats.
Confluent does not publish a cut score. Results are reported simply as pass or fail, and you see the outcome on screen immediately after finishing the exam.
The exam fee is $150 USD per attempt. If you fail, you must wait 7 days before you can purchase and register for another attempt.
Six sections: Apache Kafka Application Development 28%, Kafka Fundamentals 23%, Kafka Connect 15%, Application Observability 13%, Kafka Streams 12%, and Application Testing 8%. ksqlDB, RBAC, networking, and cluster administration are explicitly out of scope.
No formal prerequisites. Confluent's exam guide assumes fluency in Java, Python, or C# and hands-on knowledge of Kafka clients, serialization formats (Avro, JSON, Protobuf), and schema evolution; 6-12 months of practical Kafka experience has been the recommended baseline.
Four formats: multiple-choice (one answer), multiple-response (several answers), matching items to a topic, and build-list questions where you put process steps in the correct order. Each question has four or more options.
Two years from the date you pass. Confluent requires you to recertify by passing the current version of the exam again; there is no continuing-education renewal path.
$17.99
One-time access to this exam