2026년 6월 29일 · 약 8분
시스템 디자인 면접 준비법 — 면접관이 보는 5가지 기준
시스템 디자인 면접이 어려운 이유는 "정답이 없어서"입니다. 알고리즘처럼 맞고 틀림이 명확하지 않으니, 무엇을 어디까지 말해야 할지 막막합니다. 하지만 면접관 입장에서 보면 평가 기준은 꽤 분명합니다. 무엇을 그렸는가가 아니라 어떻게 생각했는가를 봅니다.
흔한 실수: 바로 그리기 시작한다
"URL 단축 서비스를 설계해보세요"를 듣자마자 박스와 화살표를 그리기 시작하는 분이 많습니다. 이건 거의 항상 감점입니다. 면접관은 그 순간 "요구사항도 안 정하고 설계부터 하네"라고 생각합니다.
좋은 시작은 질문입니다. "읽기와 쓰기 비율은 어느 정도로 가정할까요?", "단축 URL은 영구 보관인가요, 만료가 있나요?" 이렇게 범위와 가정을 먼저 좁히는 사람이 점수를 받습니다.
면접관이 보는 5가지 기준
1. 요구사항을 명확히 하는가
기능 요구사항(무엇을 한다)과 비기능 요구사항(얼마나 빠르게, 얼마나 많이)을 구분해 정리하는지 봅니다. 규모 추정(하루 요청 수 → 초당 요청 수 → 저장 용량)을 거칠게라도 해보는 것이 좋습니다.
2. 핵심 흐름을 단순하게 잡는가
처음부터 캐시·큐·샤딩을 다 붙이면 오히려 마이너스입니다. 가장 단순한 동작 버전을 먼저 그리고, "이제 트래픽이 10배가 되면 어디가 먼저 터질까요?"로 확장하는 흐름이 깔끔합니다.
3. 병목을 찾고 트레이드오프를 말하는가
"여기서 DB가 병목이 될 테니 읽기는 캐시로 분산하겠다. 대신 캐시 무효화를 이렇게 처리해야 한다." — 이득과 대가를 함께 말하는 것이 핵심입니다. 장점만 나열하면 깊이가 없어 보입니다.
4. 데이터를 어떻게 다루는가
어떤 데이터를 어디에(관계형 DB·NoSQL·캐시·오브젝트 스토리지) 둘지, 그 이유는 무엇인지. 정합성이 중요한지, 가용성이 중요한지에 따라 선택이 달라진다는 걸 보여주면 좋습니다.
5. 장애와 확장을 고려하는가
"이 컴포넌트가 죽으면?", "데이터센터 하나가 내려가면?" 같은 질문에 대비가 있는지. 모든 걸 완벽히 답할 필요는 없지만, 고려는 하고 있다는 신호를 주는 게 중요합니다.
추천 답변 흐름
대부분의 시스템 디자인 문제는 이 순서로 풀면 안정적입니다.
- 요구사항·가정 확정 (5분) — 질문으로 범위 좁히기
- 규모 추정 (2~3분) — 트래픽·데이터량 거칠게 계산
- 핵심 흐름 설계 — 가장 단순한 동작 버전
- 확장·병목 해소 — 캐시·복제·샤딩·큐를 필요에 따라
- 장애·트레이드오프 정리 — 무엇을 포기했는지 명시
혼자 준비할 때의 한계
책과 영상으로 패턴은 익힐 수 있습니다. 하지만 시스템 디자인은 말로 설명하는 면접이라, 머릿속으로 아는 것과 실제로 면접관 앞에서 30분간 설계를 이끌어가는 것은 전혀 다릅니다.
가장 효과적인 준비는 실제 면접관에게 한 번 설계를 발표하고, "여기서 왜 그 선택을 했나요?"라는 압박 질문을 받아보는 것입니다. 어디서 말이 막히고, 어떤 가정을 빠뜨렸는지는 직접 겪어봐야 보입니다.
자주 묻는 질문
시스템 디자인 면접은 정답이 있나요?
정답은 없습니다. 같은 문제도 가정에 따라 설계가 달라지므로, 면접관은 결과물보다 가정을 세우고 트레이드오프를 설명하는 과정을 평가합니다.
화이트보드에 무엇부터 그려야 하나요?
바로 그리지 말고 먼저 요구사항과 규모(트래픽·데이터량)를 확정하세요. 그다음 핵심 흐름 → 데이터 모델 → 확장 순으로 넓혀갑니다.
신입도 시스템 디자인을 준비해야 하나요?
네. 신입은 완성된 설계보다 문제를 쪼개고 질문하는 사고를 봅니다. 기본기(캐시·DB·큐·로드밸런서)와 흐름만 잡아도 충분합니다.