Both CCDAK and CCAAK are online-proctored, and your test-day execution moves the score. This article is based on my own exam experience and carefully separates the stable Kafka fundamentals from the test-operations details that tend to change.
Note that operational details — exam policies, question counts, allotted time — can change, so always check the official Confluent Certification site for the latest. Kafka's behavioral spec (producer idempotence, transactions, consumer groups, log retention, and so on) is stable as long as you follow the official docs.
The exam is online-proctored. Before launching, you do a system check, identity verification, room scan, and screen-share/mic/camera checks. As a rule, leaving mid-exam is not allowed and external materials are prohibited.
The exact check-in flow and ID verification depend on the proctoring vendor. The flow below is generic — run a rehearsal (system check) in your testing portal before exam day and review the latest guidelines.
| Timing | Main tasks | Pitfalls |
|---|---|---|
| T-45 to T-30 min | System check, prepare ID, clear desk | Webcam/mic permission blocks; forgetting to unplug a second monitor |
| Check-in | ID photo, room scan, agree to rules | Writing on a wall or whiteboard triggering a rejection |
| During the exam | Answer questions, flag items, sketch on the online board | Notification popups, screensaver, auto-updates |
| After finishing | Submit, survey, review report | Forgetting to revert OS settings while waiting on the result email |
Typical online-exam flow
Quick pre-check shell (network and processes)
# Assumes macOS/Linux. On a corporate PC, mind your management policies.
set -euo pipefail
# Connectivity check (to stable DNS)
for h in 1.1.1.1 8.8.8.8; do
ping -c 3 "$h" >/dev/null && echo "OK: ping $h" || echo "WARN: ping $h failed"
done
# Check processes currently using camera/microphone (example)
if command -v lsof >/dev/null; then
lsof -nP | grep -E "(camera|microphone|CoreAudio|avfoundation)" || true
fi
echo "Pause notifications/auto-updates and disconnect dual monitors / external devices"The baseline rules are: single monitor, no physical notes, online whiteboard allowed. IME switching is generally fine, but custom key bindings and text snippets risk being flagged, so it is safer to disable them.
Prioritize network stability. Disconnect VPNs and corporate proxies; on Wi-Fi, use the 5 GHz band near the router. Temporarily disable OS notifications, updates, and auto-sleep.
| Setting | Recommended | Notes |
|---|---|---|
| Display/Input | Single monitor, wired mouse, standard keyboard | Disable special key bindings and macros |
| Network | Wired LAN or stable Wi-Fi; VPN off | Check that the corporate proxy will not pop auth dialogs |
| OS settings | Notifications off, auto-updates paused, sleep disabled | Request admin rights in advance on corporate PCs that need them |
| Browser | Clean profile, extensions off | Suppress password-manager popups |
Minimal physical setup
Quick network-quality check (Linux/macOS)
# Check sustained connectivity and rough jitter
HOST=8.8.8.8
ping -c 20 "$HOST" | tail -n +2
# HTTP reachability
curl -I https://kafka.apache.org/ || echo "HTTP reachability problem"
echo "Disable VPN/proxy and retest"On pass one, lock in the easy questions quickly and flag the ones you are unsure of; deep-dive on pass two. Speed up decisions with elimination and keyword matching (idempotence, transactions, compaction, ISR, and so on).
The online whiteboard works best with shorthand and diagrams. For example, drawing the relationship between Acks=all, idempotent, tx.commit, and read_committed with arrows helps you avoid trick questions.
| Phase | Goal | Decision criteria |
|---|---|---|
| Pass 1 | Collect easy points; mark confidence | Can you answer immediately? Is there a grounding keyword? |
| Pass 2 | Triage hard items and manage time | Does the reasoning match the official spec? |
| Before submit | Review and resolve flags | Re-check misreadings, double negatives, and version-dependent points |
Time-budget mental model
Simple local time-box for practice (bash)
# A mini-timer to drill per-question time limits
q=1
while [ $q -le 10 ]; do
echo "Q$q: decide in 90 seconds (flag if unsure)";
sleep 90;
echo "next";
q=$((q+1))
done
Most questions come from Kafka's stable spec. Frequent topics include producer idempotence and transactions, consumer isolation levels, partitioning, log retention and compaction, replication and ISR, and assignment strategies (Range/Sticky/Cooperative).
Commonly mixed-up points: the relationship between Acks=all and Exactly-Once (Acks=all is not a necessary-and-sufficient condition), combining compaction with retention, what read_committed actually means, and what triggers a rebalance (member leave, timeout, subscription change). Judge based on the official spec.
| Concept | Exam angle | Production pitfall |
|---|---|---|
| Idempotent Producer | Suppressing duplicate messages | Ignoring broker-side settings and Min ISR weakens fault tolerance |
| Transactions | Producer/consumer coordination | Forgetting read_committed and reading uncommitted data |
| Compaction vs Deletion | KTable-style patterns and retention strategy | Handling key-less records; the meaning of tombstone records |
| Rebalance Strategy | Sticky vs Cooperative differences | Misunderstanding behavior during joins or pauses |
Logical path: Producer → Broker → Consumer
Minimal idempotent + transactional producer configuration (producer.properties)
bootstrap.servers=broker:9092
aacks=all
enable.idempotence=true
transactional.id=orders-tx-001
max.in.flight.requests.per.connection=5
retries=INT_MAX
linger.ms=10
batch.size=32768
Issues fall into three buckets: network, device, and OS notifications. A safe triage order is: confirm reproducibility → switch routes (tethering/wired) → restart → notify the proctor.
Proctor chat is often in English, so prepping short templates helps. For example: "Network is unstable. I will reconnect without VPN."
| Symptom | Likely cause | On-the-spot fix |
|---|---|---|
| Video freezes | Unstable Wi-Fi, VPN interference | Disconnect VPN, wire in, move closer to the router |
| Audio drops | Another app is holding the mic | Quit audio apps fully, re-grant permission |
| Screen share fails | OS permission missing, extension interference | Review privacy settings; use a clean browser |
| Warning popups | Notifications not paused, auto-updates | Enable focus mode, pause updates |
Simplified troubleshooting decision tree for the day
Suppressing notifications (e.g. macOS, Windows)
# macOS: prefer manually enabling Focus mode (automation often hits permission issues)
# Windows: set Focus Assist to "Alarms only"
# Below only checks the state
# macOS Focus-mode state (reference)
/usr/bin/defaults read ~/Library/Preferences/ByHost/com.apple.notificationcenterui.plist 2>/dev/null || true
echo "Enable Focus mode / Focus Assist from the OS UI"A minimal collection of commands and settings that come up often in both work and the exam. CLI options and property names follow the official stable spec.
Note: the actual exam is multiple-choice — no CLI execution is required — but knowing these helps with conceptual understanding.
| Command/Setting | Purpose | Key point |
|---|---|---|
| kafka-topics --describe | Visualize topology | Check partition count, RF, and ISR |
| kafka-consumer-groups --describe | Lag and assignment | Spot rebalance signs |
| cleanup.policy=compact | Keep latest values | Tombstones and a required key |
| acks=all + min.insync.replicas | Fault tolerance and consistency | Rejecting minority writes — availability vs. consistency trade-off |
Offset commit flow (conceptual)
Snippets of Kafka CLI and configuration
# Create a topic (example)
kafka-topics --bootstrap-server broker:9092 \
--create --topic orders \
--partitions 6 --replication-factor 3
# Check consumer group lag
kafka-consumer-groups --bootstrap-server broker:9092 \
--describe --group app-consumer
# Combined retention + compaction (keep latest long-term while pruning old values)
cleanup.policy=compact,delete
retention.ms=604800000 # 7 days
segment.ms=3600000 # 1 hourAfter submitting, wait for the report and score to populate. Map weak spots by theme (e.g. transactional consistency, retention strategy, rebalance) to the official docs and write out the reasoning — repeatability goes up.
Pass or fail, fold what you learned into production config templates and operational runbooks — retention sticks faster.
| Action | Time needed | Deliverable |
|---|---|---|
| Inventory question keywords | 30 min | Weak-spot tag list (e.g. EOS, compaction, ISR) |
| Re-read the official docs | 1–2 hours | Reasoning notes (spec quotes + summary) |
| Build a validation scenario | 1 hour | Procedure, expected results, and diff notes |
The learning loop
Review template (YAML example)
topics:
- name: Exactly-Once Semantics
symptoms: ["Confusing Acks=all with EOS", "Missing read_committed"]
doc_refs:
- kafka.apache.org/documentation/#semantics
- docs.confluent.io/
actions:
- "Producer: re-verify the minimal idempotence + transaction setup"
- "Consumer: validate the effect of isolation.level=read_committed"CCDAK / CCAAK
問題 1
An application reads from topic A, transforms, and writes to topic B. You want to avoid duplicate writes and ensure consumers do not read uncommitted intermediate results. Which configuration is most appropriate?
正解: A
An Exactly-Once pipeline requires producer idempotence and transactions; the consumer must use read_committed to filter out uncommitted records and preserve consistency. acks=all or retries alone cannot prevent duplicates or uncommitted reads. cleanup.policy is a retention strategy and does not directly solve EOS requirements.
Are the duration and question count for CCDAK/CCAAK fixed?
Operational policies can change. Always confirm the latest details in the official Confluent Certification exam guide right before your test. This article intentionally avoids specific minutes or question counts.
Can I use physical notes or dual monitors?
Most online-proctored exams disallow physical notes and require a single monitor. An online whiteboard is typically provided. Follow the rules of your testing portal.
Do Kafka version differences (ZooKeeper vs KRaft) affect the exam?
Questions are usually grounded in stable product concepts, but administrative contexts may touch on the differences. It is safer to review the latest official docs on controller quorums and operational changes.
Practice with certification-focused question sets
無料で問題を解いてみるNicheeLab Editorial Team
NicheeLab editorial team focused on data engineering and cloud certification learning. Content is structured around practical study needs and official exam domains.
Kafka Topics & Partitions: Distribution Fundamentals (2026)
How Kafka topics and partitions enable scale — ordering guar...
CCDAK Exam Guide: Confluent Certified Developer (2026)
Complete prep for the CCDAK exam — Producer/Consumer API, St...
CCAAK Exam Guide: Confluent Certified Administrator (2026)
Pass the CCAAK exam — cluster management, partitions, securi...
Kafka Replicas & ISR: Fault Tolerance Explained (2026)
Replica placement, in-sync replicas (ISR), leader election. ...
Kafka Offsets: Commit Modes & Consumer Position (2026)
Offset semantics — auto vs. manual commit, __consumer_offset...