Design a Coding Contest Platform

Quick Overview

This question evaluates system design and distributed-systems competencies, including scalable job orchestration, secure sandboxed execution, real-time leaderboard updates, and submission state tracking for automated judging workflows.

Design a Coding Contest Platform

Company: Meta

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Onsite

Design an online coding contest platform that supports programming competitions, code submission, automated judging, and live leaderboards. The platform should support: - User registration and contest participation. - Problem statements, test cases, and scoring rules. - Code submissions in multiple programming languages. - Secure code execution in an isolated sandbox or container. - Real-time or near-real-time leaderboard updates. - Tracking the current status of each submission, such as queued, running, accepted, wrong answer, time limit exceeded, runtime error, or system error. Deep-dive areas: 1. How would you scale the code judging system as submission volume grows? 2. How would you scale the database and leaderboard storage? 3. How would you track and expose the current state of each code-judging job?

Quick Answer: This question evaluates system design and distributed-systems competencies, including scalable job orchestration, secure sandboxed execution, real-time leaderboard updates, and submission state tracking for automated judging workflows.

|Home/System Design/Meta
Meta logo
Meta
Mar 17, 2026, 12:00 AM
mediumSoftware EngineerOnsiteSystem Design
1
0

Design an online coding contest platform that supports programming competitions, code submission, automated judging, and live leaderboards.

The platform should support:

  • User registration and contest participation.
  • Problem statements, test cases, and scoring rules.
  • Code submissions in multiple programming languages.
  • Secure code execution in an isolated sandbox or container.
  • Real-time or near-real-time leaderboard updates.
  • Tracking the current status of each submission, such as queued, running, accepted, wrong answer, time limit exceeded, runtime error, or system error.

Deep-dive areas:

  1. How would you scale the code judging system as submission volume grows?
  2. How would you scale the database and leaderboard storage?
  3. How would you track and expose the current state of each code-judging job?

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...