PracHub
QuestionsPremiumCoachesLearningGuidesInterview Prep
|Home/System Design/Meta

Design an online coding platform

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's ability to design scalable, secure distributed systems with emphasis on architecture, data modeling, service design, sandboxed code execution, and performance under high load for an online coding platform.

  • medium
  • Meta
  • System Design
  • Software Engineer

Design an online coding platform

Company: Meta

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Onsite

Design an online coding practice and interview platform (similar to well-known coding challenge sites). The platform should allow: - Users to sign up, log in, and manage profiles. - Users to browse, search, and filter coding problems. - Users to write, run, and submit code solutions in multiple programming languages through a web-based editor. - Automatic judging of submissions against hidden test cases, with results (e.g., Accepted, Wrong Answer, Time Limit Exceeded). - Tracking of user statistics and progress (e.g., solved problems, difficulty distribution). **Requirements and considerations:** 1. **Functional requirements** - Problem management: create, update, and categorize coding problems (by difficulty, topic, etc.). - Code execution: run user-submitted code safely and efficiently in isolated environments. - Submissions: store submission history and results per user and per problem. - Ranking/leaderboards: optionally show user rankings. 2. **Non-functional requirements** - High availability and scalability to support millions of users and high QPS during peak times. - Low latency for listing problems and fetching problem details. - Reasonable turnaround time for judging submissions. - Strong isolation and security for untrusted user code. 3. **Constraints (assume)** - Target: 5M registered users, up to 200k daily active users. - Peak: 10k code runs per minute. Describe how you would design this system end-to-end. Talk about: - High-level architecture and major components. - Data modeling and storage choices. - Code execution and sandboxing, including how to scale the judge/execution layer. - Handling of traffic patterns, caching, and performance optimizations. - Key trade-offs and how you would evolve the design as traffic grows.

Quick Answer: This question evaluates a candidate's ability to design scalable, secure distributed systems with emphasis on architecture, data modeling, service design, sandboxed code execution, and performance under high load for an online coding platform.

Related Interview Questions

  • Design Top-K, Crawler, and Chess Systems - Meta (hard)
  • Design Search And Web Crawling Systems - Meta (medium)
  • Design an Instagram-Style Social Feed - Meta (medium)
  • Design an Online Game Leaderboard - Meta (hard)
  • Design an On-Demand Delivery Platform - Meta (medium)
Meta logo
Meta
Dec 8, 2025, 6:32 PM
Software Engineer
Onsite
System Design
3
0

Design an online coding practice and interview platform (similar to well-known coding challenge sites).

The platform should allow:

  • Users to sign up, log in, and manage profiles.
  • Users to browse, search, and filter coding problems.
  • Users to write, run, and submit code solutions in multiple programming languages through a web-based editor.
  • Automatic judging of submissions against hidden test cases, with results (e.g., Accepted, Wrong Answer, Time Limit Exceeded).
  • Tracking of user statistics and progress (e.g., solved problems, difficulty distribution).

Requirements and considerations:

  1. Functional requirements
    • Problem management: create, update, and categorize coding problems (by difficulty, topic, etc.).
    • Code execution: run user-submitted code safely and efficiently in isolated environments.
    • Submissions: store submission history and results per user and per problem.
    • Ranking/leaderboards: optionally show user rankings.
  2. Non-functional requirements
    • High availability and scalability to support millions of users and high QPS during peak times.
    • Low latency for listing problems and fetching problem details.
    • Reasonable turnaround time for judging submissions.
    • Strong isolation and security for untrusted user code.
  3. Constraints (assume)
    • Target: 5M registered users, up to 200k daily active users.
    • Peak: 10k code runs per minute.

Describe how you would design this system end-to-end. Talk about:

  • High-level architecture and major components.
  • Data modeling and storage choices.
  • Code execution and sandboxing, including how to scale the judge/execution layer.
  • Handling of traffic patterns, caching, and performance optimizations.
  • Key trade-offs and how you would evolve the design as traffic grows.

Solution

Show

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Meta•More Software Engineer•Meta Software Engineer•Meta System Design•Software Engineer System Design
PracHub

Master your tech interviews with 8,000+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.