AI architecture evaluator

System design practice,
graded like an interview.

Draw your architecture on an infinite canvas. You get a score out of ten, the bottlenecks you missed, and honest feedback on how you explained the trade-offs.

Free to start · No credit card

url-shortenerread path

Clients

mobile and web

https

API Gateway

rate limiting, routing

cache lookup

Redis

hot reads

Postgres

partitioned

8.5/10strong architecturesample scorecard

Concepts under review

HashingRedisNoSQLLoad BalancingAnalyticsToken BucketRedis LuaAPI GatewayDistributed LocksWebSocketsPubSubCassandraPush NotificationsPresenceCDNTranscodingS3HLS/DASHKafka WorkersGeospatialH3/S2KafkaHashingRedisNoSQLLoad BalancingAnalyticsToken BucketRedis LuaAPI GatewayDistributed LocksWebSocketsPubSubCassandraPush NotificationsPresenceCDNTranscodingS3HLS/DASHKafka WorkersGeospatialH3/S2Kafka

Challenge library

Real interview questions, with the numbers stated up front.

Every brief lists its requirements, traffic targets, and latency budget before you start, so you can tell a solved design from a guessed one.

16 challenges5 domainsBrowse all
Medium30-45 mins

Design a URL Shortener

Turn long URLs into short ones and redirect them fast, in the style of TinyURL or bit.ly.

  • 01Generate a unique short code (7 base62 characters) for any long URL
  • 02Redirect a GET on the short URL to the original destination in under 10ms
  • 03Handle ~100M new URLs a day on a 100:1 read-to-write ratio
Open the canvas

What comes back

Every submission comes back as a written review.

A score with the reasoning behind it, the strengths worth keeping, the points of failure, and what to fix before the next attempt.

The score and the verdict

A mark out of ten in the style of an interviewer, with the reasoning attached.

8.5/ 10Strong architecture

The read path is well cached and the key space is dense. The storage tier is the weak link, and it is the one thing that would take the service down.

strengths

  • Redis in front of Postgres absorbs the hot reads.
  • Base62 keys keep the lookup space dense.

bottlenecks

  • One primary with no automated failover, so a single crash takes the service down.
  • Click analytics share the hot write path with redirects.
  • No CDN cache in front of reads.

recommendations

  • 01Add a read replica and promote it on failure.
  • 02Move click events onto a queue and write them out of band.

sample scorecard

Two-minute walkthrough

Say the trade-offs out loud. The transcript is critiqued on clarity and depth.

candidate transcript

"Reads dominate, so I cache the hot twenty percent and shard by short code."

Attempt history

Restore any earlier diagram onto the canvas and watch the score move.

  • attempt 016.0
  • attempt 027.5
  • attempt 038.5

sample attempts

Start where you are

Pick a challenge and start drawing.

Three evaluations are free. Sign in with Google when you want your attempts kept and your scores tracked.