CCDAK
시험 당일 전략
지식이 충분해도 시험장에서 잃는 점수가 있습니다. 프록터링 준비를 안 해서 시작이 지연되거나, matching 유형을 처음 보고 당황하거나, 한 문제에 10분을 쓰고 뒤쪽을 못 푸는 경우입니다. 이 페이지는 지식 외의 변수를 없애는 것을 목표로 합니다.
이 페이지의 목표
- 프록터링 환경을 시험 전날 완비할 수 있습니다.
- 세 가지 문항 유형별로 다른 전략을 적용할 수 있습니다.
- 90분 안에 전 문항을 검토까지 마치는 페이스를 만들 수 있습니다.
- 선택지 문장만 보고 함정 후보를 먼저 배제할 수 있습니다.
시험 전날 체크리스트
| 구분 | 항목 | 비고 |
|---|---|---|
| 프록터링 환경 | 웹캠·마이크 동작 확인 | 브라우저 권한까지 실제로 허용해 두기 |
| 업로드·다운로드 대역폭과 안정성 | 유선 연결이 가장 안전합니다 | |
| 시험 플랫폼이 요구하는 브라우저·확장 프로그램 | 확장 프로그램 충돌로 실행이 막히는 사례가 있습니다 | |
| 책상 위를 비우고 주변을 정리 | 방을 카메라로 비춰 보여 주는 절차가 있습니다 | |
| 모니터 1개만 연결 | 듀얼 모니터는 보통 허용되지 않습니다 | |
| 신분증 (영문 이름이 신청 정보와 일치) | 불일치는 응시 거부 사유입니다 | |
| 90분간 방해받지 않는 조용한 공간 | 사람이 들어오면 중단될 수 있습니다 | |
| 학습 | 벼락치기 요약 1회 통독 | 새 내용을 넣지 않습니다 |
| 함정 사전 40쌍 1회 통독 | 가장 효율이 높은 마지막 복습 | |
| 플래시카드 설정 기본값 덱 | 숫자 암기는 반복 노출이 유일한 방법입니다 | |
| 새 모의고사를 풀지 않습니다 | 낮은 점수가 자신감만 깎습니다. 오답 노트만 보세요 |
문항 유형 3종 — 각각 다른 전략
Confluent는 자격증 시험을 "90 minute proctored exams. Question types vary, and include multiple-choice, matching, list order." 라고 안내합니다. 객관식만 준비하면 안 됩니다.
| 유형 | 채점 | 전략 |
|---|---|---|
| multiple-choice (단일 정답) |
정답 1개 일치 | 선택지를 먼저 읽고 배제합니다. 절대적 표현이 들어간 선택지, 설정의 소속을 바꿔 놓은 선택지를 먼저 지우면 보통 2개로 좁혀집니다. |
| multiple-choice (복수 정답) |
전부 일치 (부분 점수 없음) | "몇 개를 고르라"는 지시를 반드시 확인합니다. 확실한 것부터 체크하고, 애매한 것은 "이것이 없으면 요구사항이 성립하는가"로 판단합니다. |
| matching (연결형) |
모든 쌍 일치 | 확실한 쌍을 먼저 확정해 후보를 줄입니다(제거법). 오답 후보(extra)가 섞여 있을 수 있으니 "남은 것을 억지로 짝지어야 한다"고 가정하지 않습니다. |
| list order (순서 배열) |
순서 완전 일치 | 첫 단계와 마지막 단계를 먼저 고정하고 가운데를 채웁니다. "초기화는 한 번만", "검증은 마지막" 같은 원칙이 대개 답을 결정합니다. |
문제 내용 패턴 4가지
| 패턴 | 예시 | 접근법 | 목표 시간 |
|---|---|---|---|
| ① 설정값 묻기 | "4.x에서 linger.ms의 기본값은?" |
알면 즉답, 모르면 즉시 표시하고 넘김. 고민해서 나오는 답이 아닙니다 | 20초 |
| ② 시나리오 판단 | "컨슈머가 반복 리밸런스한다. 1차 처방은?" | 증상 → 원인 축(하트비트/poll/ISR/크기) → 처방 순으로 좁힙니다. "가장 적절한"이면 최소 변경으로 원인을 제거하는 것을 고릅니다 | 1분 30초 |
| ③ 코드·설정 판독 | 10~20줄 Java 또는 properties | 먼저 문제가 무엇을 묻는지 읽고 코드로 갑니다.
코드를 먼저 정독하면 시간이 녹습니다. 키 지정 여부, 커밋 위치, in-flight 값,
isolation.level을 먼저 스캔합니다 |
2분 |
| ④ 계산 | lag, 디스크 용량, 태스크 수, 윈도우 개수 | 공식을 먼저 쓰고 숫자를 넣습니다. lag은 high watermark 기준, 디스크는 RF를 곱하고, 태스크는 파티션 수가 상한입니다 | 1분 30초 |
90분 시간 배분
실제 문항 수는 공개되지 않습니다. 아래는 이 사이트의 모의고사 벤치마크인 60문항 / 90분을 기준으로 한 페이스입니다. 문항 수가 다르면 비율만 유지하면 됩니다.
| 라운드 | 시간 | 할 일 |
|---|---|---|
| 1라운드 1회독 |
60분 (문항당 평균 60초) |
아는 것만 확정하고 나머지는 표시(flag)하고 넘깁니다. 90초를 넘기면 무조건 표시하고 이동합니다. 코드 판독 문항은 여기서 다 풀려고 하지 마세요. |
| 2라운드 표시 문항 |
20분 | 표시한 문항만 다시 봅니다. 1라운드에서 본 다른 문항이 힌트를 주는 경우가 많습니다 (같은 설정을 다른 각도로 묻는 문항이 섞여 있습니다). |
| 3라운드 검토 |
10분 | 복수 선택 문항의 개수 조건과 matching·ordering의 빈칸을 확인합니다. 여기서 발견되는 실수가 가장 아깝습니다. 단일 선택 문항의 첫 직감을 바꾸는 것은 신중히 하세요. |
오답 유도 패턴 6가지
선택지 문장의 형태만 보고 함정 후보를 좁힐 수 있습니다. 더 자세한 분석은 함정 사전의 오답 유도 패턴 절에 있습니다.
| 패턴 | 신호 | 판단 |
|---|---|---|
| ① 절대적 표현 | "항상", "절대", "모든 경우에", "무조건", "완전히 보장한다" | Kafka에는 조건 없는 보장이 거의 없습니다. 대개 오답입니다. 단 "오프셋은 파티션 안에서만 의미가 있다"처럼 범위를 한정하는 단정은 정답일 수 있습니다. |
| ② 소속 바꿔치기 | "프로듀서의 fetch.max.bytes", "컨슈머의 acks",
"브로커의 isolation.level" |
설정 이름은 맞고 소속이 틀린 형태입니다. 가장 흔한 함정이므로 설정을 볼 때 소속을 먼저 확인하는 습관을 들이세요. |
| ③ 기본값 미묘 변형 | linger.ms=0, session.timeout.ms=10000,
message.max.bytes=1048576, group.protocol=consumer |
3.x 기준 값이거나 12바이트만 다른 값입니다.
4.x에서 바뀐 5개(linger.ms, acks, enable.idempotence,
session.timeout.ms, 메타데이터 저장소)를 특히 조심하세요.
|
| ④ 옳지만 답이 아닌 것 | "acks=all로 설정한다" (질문은 순서 보장에 대한 것) |
사실은 맞지만 질문에 답하지 않는 선택지입니다. "가장 적절한"류 문항에서 주로 쓰입니다. 질문의 목적어를 다시 읽으세요. |
| ⑤ 과잉 조치 | "토픽을 삭제하고 다시 만든다", "커넥터를 지우고 재생성한다",
"unclean.leader.election.enable=true로 켠다" |
증상은 사라지지만 데이터 유실·부작용이 큰 선택지입니다. 시험은 최소 변경으로 원인을 제거하는 답을 정답으로 둡니다. |
| ⑥ 층위 혼동 | "EOS를 켜면 외부 DB 중복도 막힌다", "컴팩션은 중복을 즉시 제거한다",
"tasks.max를 올리면 항상 빨라진다" |
보장의 경계나 동작 시점을 넓혀 놓은 선택지입니다. "어디까지"와 "언제"를 확인하면 걸러집니다. |
마지막 10분에 확인할 20개
시험 직전에 눈으로 훑는 목록입니다. 전체는 벼락치기 요약에 있습니다.
| 1 | linger.ms 기본값은 5 (4.0에서 0→5) |
|---|---|
| 2 | acks=all, enable.idempotence=true가 기본값 (3.0부터) |
| 3 | group.protocol 기본값은 classic (KIP-848은 GA지만 기본값 아님) |
| 4 | 멱등성 켜면 in-flight ≤ 5, 초과하면 ConfigException |
| 5 | onCompletion()은 Sender 스레드에서 실행 |
| 6 | 실질 재시도 상한은 retries가 아니라 delivery.timeout.ms(120000) |
| 7 | session.timeout.ms(45000)는 하트비트, max.poll.interval.ms(300000)는 poll |
| 8 | poll 초과의 1차 처방은 max.poll.records(500) 축소 |
| 9 | assign()+subscribe() 혼용은 IllegalStateException |
| 10 | auto.offset.reset(latest)는 커밋 오프셋이 없거나 범위 밖일 때만 |
| 11 | isolation.level 기본값은 read_uncommitted — 컨슈머 설정 |
| 12 | EOS는 Kafka 경계 안에서만. 외부 DB·API에는 적용 안 됨 |
| 13 | message.max.bytes=1048588, max.request.size=1048576 |
| 14 | min.insync.replicas는 acks=all과만 상호작용. 기본값 1 |
| 15 | 컴팩션은 활성 세그먼트를 제외하고 즉시가 아니라 백그라운드로 |
| 16 | BACKWARD=컨슈머 먼저, FORWARD=프로듀서 먼저 |
| 17 | sink 오프셋은 __consumer_offsets, source 오프셋은 offset.storage.topic |
| 18 | DLQ는 errors.tolerance=all + 토픽 이름 지정 + sink 전용 |
| 19 | map은 리파티션 표시, mapValues는 아님 |
| 20 | TopologyTestDriver는 브로커 없이 동작. processing.guarantee 기본은 at_least_once |
여기서 이어지는 연습
출처와 확인 범위
- 시험 형식 — 90분 프록터링, multiple-choice · matching · list order 3종: Confluent 공식 문구에서 확인했습니다.
- 문항 수 · 합격 점수 — Confluent 미공개. 이 페이지의 "60문항 / 90분"은 이 사이트의 연습용 벤치마크입니다.
- 프록터링 세부 요구사항 — 확인하지 못했습니다 (Confluent 도메인 접근 불가). 일반적인 온라인 프록터링 요구사항으로 서술했습니다.
- 기술 사실과 설정 기본값 — Apache Kafka 4.3 공식 문서 (Producer Configs, Consumer Configs, Topic Configs, Broker Configs).
- 오답 감점 여부 — 공개된 근거가 없습니다. "빈칸으로 두지 말라"는 조언은 감점이 없다는 확인이 아니라 정보가 없을 때의 기대값 판단입니다.