Toph Case Study

Toph is a modern sport programming platform where you can participate in exhilarating contests, solve unique challenges and be a part of an awesome community.

Toph contest arena

The Challenge: Building a Secure and Scalable App

Toph required a secure mechanism for executing and evaluating arbitrary code submitted by the users, and a robust architecture that scales easily on-demand.

Solution

Our development team had to the address a number of challenges:

  • Executing arbitrary user submitted code in a secure environment.
  • Scaling out to accommodate more users without disrupting experience.
  • Delivering a real-time contest experience to both participants and moderators.

Sandbox for User Submitted Code

Our developers leveraged the power of Linux Namespaces and Cgroups to create a lightweight yet secure code sandboxing tool.

Scalable Infrastructure

Our Go developers followed The Twelve-Factor App methodology to build a set of amazing portable apps that can scale up easily and on-demand.

Real-time Contest Experience

Our front-end team built a real-time contest arena using Backbone.js on top of Toph’s REST APIs and PubSub architecture.

The Results

Toph is now powered by a set of back-end apps that can scale independently based on load and contest needs. It provides a powerful real-time single-page contest arena app that delivers a consistent user experience on any network.

The lightweight sandboxing tool allows Toph to make the most out of its back-end resources, and provide verdicts for user submissions quickly.

Download PDF