Design an online code judge.

Medium
Company: Premium
GoogleAmazonUber

Let's refine the design of an online code judge. At its heart, this system takes code submissions, runs them against predefined test cases, and determines if the submission is correct. However, building a robust, scalable, and maintainable judge requires careful consideration of various factors, specifically focusing on the code design. We want to simulate a real-world coding judge, taking into account compilation, execution, and result aggregation. The system should be able to support multiple programming languages and handle potentially malicious or resource-intensive code. Error messages should be as descriptive as possible to help debug.

Requirements

Think like an Architect

Before revealing the requirements, imagine you're in the interview right now."How would you clarify the scope with your interviewer?"

Premium Content

View detailed solutions.

UNLOCK PREMIUM