데브허브 | DEVHUB | System Design Interview: Design LeetCode w/ a Google EngineerSystem Design Interview: Design LeetCode w/ a Google Engineer
- LeetCode와 같은 온라인 코드 제출 플랫폼을 설계하는 중요한 첫 번째 단계는 사용자 요구 사항을 이해하는 것입니다. 🔑
- 시스템에는 코드 평가 기능 및 경쟁 시스템이 필요하며, 사용자 관리 기능도 필수입니다. 👨💻👩💻
- 낮은 지연 시간과 높은 사용 가능성이 중요하며, 시스템 안전성도 고려해야 합니다. 🛡️
- 병목 현상 서비스를 식별하고, 이를 기반으로 Read/Write Queries per second를 계산해야 합니다. 🚰
- 사용자 정보, 대회 정보, 사용자 제출 및 테스트 케이스 실행 결과와 같은 데이터를 저장해야 합니다. 💽
- 사용자 ID와 제출 코드와 같은 정보를 포함하는 API를 통해 코드 제출을 처리할 수 있습니다. 📨