ByteMonk logo

Practice

Whiteboard problems for real system design practice. Read the requirements, draw your architecture, and reason through the math like you would in an interview.

5 problems are open with a free account; the rest are included with membership.

0/6done
Easy
1
Medium
3
Hard
2
Your progress

System Design

AttemptedPractice
Design a Rate Limiter

Design a distributed rate limiter that limits the number of requests a user can send to an API within a specific time window.

mediumFree →
Design a URL Shortener

Design a URL shortening service like bit.ly: turn long URLs into short codes, redirect visitors fast, and survive read-heavy traffic.

easyFree →
Design a Web Crawler

Design a distributed web crawler that discovers and fetches pages at scale without hammering the sites it visits or crawling the same URL twice.

mediumSign in →
Design a Notification Service

Design a service that delivers notifications across push, email and SMS, survives flaky third-party providers, and does not send the same message twice.

mediumSign in →
Design a News Feed

Design the feed for a social network: when someone posts, decide who sees it and when, and make opening the app fast for everyone including people who follow accounts with millions of followers.

hardSign in →
Design YouTube

Design the upload and playback core of a video platform: multi-gigabyte uploads that survive bad connections, processing into many resolutions, and playback that starts in seconds anywhere in the world without stalling.

hardMembers
Practice · ByteMonk