Q1. 시스템 설계 질문에서 답변이 퍼집니다. 어떻게 고정하죠?
답변
아래 4단 프레임을 고정하세요.
- 가정 분리: 트래픽/정합성/SLA/예산 가정 명시
- 측정 지표: p95, 에러율, QPS, lag 등 무엇을 볼지
- 대응 우선순위: 빠른 조치 → 구조 개선 → 확장
- 트레이드오프: 비용/복잡도/운영성까지 언급
Q2. 예시(조회 API 느림)
답변
- 가정: 읽기 비중 95%, p95 800ms
- 측정: 슬로우쿼리, cache hit, DB CPU, lock wait
- 대응: 인덱스/쿼리 개선 → 캐시 도입 → 비동기 집계 → 리드 레플리카
- 트레이드오프: 캐시 정합성/운영 복잡도 증가
Q3. 면접관이 “왜 그렇게 했냐"고 물으면?
답변
“원인-대응 매핑"으로 답하세요.
- 원인 A(쿼리 풀스캔) → 대응 A(인덱스/쿼리 수정)
- 원인 B(핫키 집중) → 대응 B(캐시 + TTL 지터)
즉, 솔루션이 아니라 근거 기반 의사결정을 보여주면 됩니다.
Q4. 한 줄 요약 답변 템플릿
답변
“저는 먼저 가정을 분리하고 지표로 병목을 특정한 뒤, 저비용/고효과 대응부터 적용합니다. 마지막에 확장 전략을 검토하고, 각 단계의 트레이드오프를 함께 관리합니다.”
요약
- 설계 면접은 정답 맞히기가 아니라 사고 과정 검증이다.
- 프레임을 고정하면 꼬리질문에서도 흔들리지 않는다.
💬 댓글