Nodivex from TraitSpan

Practice system design by building and simulating real systems

Pick a kata scenario, sketch a diagram, and see how it handles traffic. No signup, no gatekeeping.

No signup requiredStart in under 2 minutesFeedback from real simulation data
Kata library

Pick a scenario and start designing

Each kata gives you a brief with real constraints — user traffic, latency targets, failure modes. Your job is to sketch a system that handles them.

Realistic briefs

Business requirements, traffic patterns, and constraints based on real-world systems.

Clear goals

Every kata tells you exactly what the system needs to achieve.

Difficulty levels

Start with a small service and work up to distributed systems.

K

Coffee please

Retail Technology

Beginner–Intermediate

Business goals

Prevent double-charges and duplicate orders under retries
Keep checkout responsive during peak morning rush
Award loyalty points exactly once per purchase

Constraints

No manual steps Flaky payment provider Must prevent double-charge
Simulation

Run your design against traffic and see what breaks

The simulator sends requests through your diagram and shows where bottlenecks form, what fails, and what holds up.

Traffic simulation

Watch requests flow through your components under realistic load.

Bottleneck detection

See exactly which component hits capacity first and why.

Deterministic results

Same diagram, same inputs, same output. Every time.

Coffee please — simulation

Complete

1.2k

orders/min

140ms

checkout p50

3.1%

duplicate rate

Issue detected

Duplicate orders on retry

Payment provider timeouts trigger customer retries. Without idempotency keys, 3.1% of orders are created twice.

Feedback

Get feedback grounded in your simulation data

No vague advice. Feedback references what happened in the simulation and suggests one specific thing to try next.

Data-driven critique

Every piece of feedback points to a specific metric or bottleneck from your run.

Trade-off analysis

See what you gained and what you gave up with each design choice.

Next experiment

Get a concrete suggestion for one change to make and re-run.

Coffee please — feedback

Trade-off

Adding idempotency keys eliminates duplicate orders but requires a lookup on every write. At 1.2k orders/min the extra read adds ~8ms per checkout.

Consistency

Order status currently shows "pending" for up to 12 seconds after payment confirms. Customers retry because they think it failed.

Try next

Add an idempotency key to the order creation path. Re-run and check whether the duplicate rate drops to zero.

How it works

Four steps to practice system design

1

Choose a kata

Pick a scenario that matches the kind of system you want to practice.

2

Sketch your diagram

Drop in components and connect the flow. Keep it light.

3

Run the simulation

See how your design handles the traffic and constraints.

4

Iterate and learn

Tweak the diagram, re-run, and compare what changed.

3

Kata scenarios covering real-world patterns

Real-time

Deterministic simulation on every run

Free

No signup, no credit card, no gatekeeping

Start practising system design

Pick any kata, sketch a diagram, and see what happens. No signup required.