URL 단축기, 채팅 시스템, 뉴스피드 등 10개 시스템 설계 면접 문제. 요구사항 분석, 아키텍처 다이어그램, 규모 추정, 확장성까지.
주로 백엔드, 풀스택, 인프라/DevOps 엔지니어 면접에서 출제됩니다. 경력 3년 이상 시니어 포지션에서 필수적이며, 일부 기업은 주니어에게도 기본적인 설계 질문을 합니다.
요구사항 분석 → 규모 추정 → 고수준 설계 → 심화 주제 순서로 연습하세요. 연습 모드를 활용해 단계별로 답변을 구성하는 연습을 하면 실전에서 체계적으로 답할 수 있습니다.
주로 백엔드, 풀스택, 인프라/DevOps 엔지니어 면접에서 출제됩니다. 경력 3년 이상 시니어 포지션에서 필수적이며, 일부 기업은 주니어에게도 기본적인 설계 질문을 합니다.
요구사항 분석 → 규모 추정 → 고수준 설계 → 심화 주제 순서로 연습하세요. 연습 모드를 활용해 단계별로 답변을 구성하는 연습을 하면 실전에서 체계적으로 답할 수 있습니다.
10개 클래식 시스템 설계 문제와 아키텍처 해설
URL Shortener
TinyURL이나 Bitly처럼 긴 URL을 짧은 URL로 변환하고, 짧은 URL 접속 시 원래 URL로 리다이렉트하는 서비스를 설계하세요. 읽기 트래픽이 쓰기보다 압도적으로 많은 읽기 중심 시스템입니다.
Real-time Chat System
카카오톡이나 슬랙처럼 1:1 및 그룹 채팅을 지원하는 실시간 메시징 시스템을 설계하세요. 메시지 전달 보장, 읽음 표시, 오프라인 사용자 처리, 대규모 그룹채팅 등 다양한 실시간 통신 문제를 다룹니다.
News Feed System
인스타그램이나 트위터처럼 사용자가 팔로우하는 사람들의 게시물을 시간순 또는 관련성 기반으로 정렬하여 보여주는 뉴스피드 시스템을 설계하세요. 셀러브리티 팔로워 문제와 실시간 업데이트가 핵심 도전 과제입니다.
Cloud File Storage
Google Drive나 Dropbox처럼 파일을 클라우드에 저장하고, 여러 기기 간 동기화하며, 다른 사용자와 공유할 수 있는 파일 저장 시스템을 설계하세요. 대용량 파일 업로드, 중복 제거, 동기화 충돌 해결이 핵심입니다.
Notification System
푸시 알림, 이메일, SMS를 통합 관리하는 알림 시스템을 설계하세요. 다양한 서비스에서 발생하는 알림 이벤트를 수집하고, 사용자 설정에 맞게 적절한 채널로 전달하는 것이 핵심입니다. 높은 처리량과 재시도 로직이 중요합니다.
Web Search Engine
Google 검색을 간소화한 웹 검색 엔진을 설계하세요. 수십억 개의 웹 페이지를 크롤링하고, 역인덱스를 구축하며, 검색 쿼리에 대해 관련성 높은 결과를 밀리초 단위로 반환하는 시스템입니다. 분산 크롤링, 인덱싱, 랭킹의 세 기둥이 핵심입니다.
Video Streaming Platform
YouTube나 Netflix처럼 동영상을 업로드, 인코딩, 저장, 스트리밍하는 플랫폼을 설계하세요. 대용량 비디오 처리 파이프라인, 적응적 비트레이트 스트리밍(ABR), 글로벌 CDN 배포가 핵심 도전 과제입니다.
Rate Limiter
API 게이트웨이에 배치하여 클라이언트의 요청 빈도를 제한하는 Rate Limiter를 설계하세요. DDoS 방어, API 남용 방지, 서비스 안정성 보장이 목적이며, 분산 환경에서 정확한 카운팅과 낮은 지연시간이 핵심입니다.
Distributed Cache System
Redis나 Memcached처럼 대규모 분산 환경에서 키-값 데이터를 메모리에 캐싱하는 시스템을 설계하세요. 일관성 있는 해싱으로 노드 추가/제거 시 데이터 재분배를 최소화하고, 캐시 무효화와 TTL 관리가 핵심입니다.
Activity Feed / Timeline
LinkedIn이나 GitHub처럼 사용자와 관련된 활동(게시물 작성, 좋아요, 댓글, 코드 커밋 등)을 시간순으로 집계하여 보여주는 활동 피드 시스템을 설계하세요. 다양한 이벤트 유형을 통합하고, 이벤트 소싱과 CQRS 패턴이 핵심입니다.