We are doers, not just consultants producing PowerPoints.

Afferentis product

Structured concurrency practice platform

Practice concurrency the way you practice algorithms. Solve curated problems in the browser, run sample tests for fast feedback, and submit for hidden evaluation built for concurrent systems.

Why ConcurCode

A real judge for concurrent systems

General coding platforms teach loops and data structures well. ConcurCode is built for the problems that only appear when code runs concurrently.

Race conditions, deadlocks, ordering, backpressure, and resource limits need dedicated practice. ConcurCode packages concurrency as a problem library with the run-and-submit loop developers already know.

Curated exercises

Problems organized by primitives, failure modes, classic patterns, and architecture concerns, not just difficulty.

In-browser editor

Filter by language, tags, difficulty, and exercise type, then write, run, and submit without leaving the browser.

Safety and liveness checks

Feedback distinguishes races, invariant violations, deadlocks, starvation, ordering failures, and timeouts.

Isolated execution

Every run uses a fresh locked-down sandbox with no outbound network and strict CPU, memory, and process limits.

Production-relevant patterns

Practice worker pools, rate limiters, bounded queues, supervision trees, and the coordination patterns engineers use daily.

Language-pluggable design

New runtimes use versioned sandbox profiles, runner adapters, and exercise templates rather than one-off forks.

Practice loop

More than a thread-safe counter

Exercises progress from guided foundations to hostile schedules and stress tests.

01

Guided

Fill in the missing piece of a correct concurrent skeleton to learn one primitive at a time.

02

Fix the bug

Find and repair races, deadlocks, or ordering errors in deliberately flawed code.

03

Design

Build a concurrent system from a specification and make its coordination choices explicit.

04

Adversarial

Test an implementation against hostile scheduling, pressure, and concurrency stress cases.

Platform

How it is built

ConcurCode combines a modern web app with a Go backend, worker pool, and hardened execution sandbox.

01

Next.js frontend

Server-rendered problem pages, a Monaco editor, and streamed execution output for fast iteration.

02

Go API & workers

Go services, PostgreSQL jobs, and Redis-backed workers handle runs, judging, and exercise sync.

03

Sandbox runtime

Language-specific Docker images and nsjail profiles isolate every submission with deterministic cleanup.

04

Exercise catalog

Version-controlled YAML and markdown problems with per-language starters, solutions, and tests.

Who it is for

Practice that scales

ConcurCode supports engineers learning independently and teams building shared fluency in concurrent systems.

  • Backend engineers working with goroutines, async code, actors, and coordination patterns
  • CS students and graduates moving beyond single-threaded algorithm practice
  • Interview candidates preparing for systems-style concurrency questions
  • Engineering teams onboarding developers to concurrent codebases
  • Educators assigning concurrency problems with automated grading

Product status

In active development

The MVP is focused on the complete practice loop for Go, Python, and Erlang/Elixir: browse problems, edit code, run samples, submit for judging, and inspect concurrency-specific results.

Next up are expanded problem libraries, team and classroom modes, contests, and deeper trace and debugging views.

Interested in ConcurCode?

ConcurCode is an Afferentis product. Reach out if you want early access, team licensing, or a walkthrough.

Contact Afferentis All products