How the interviewer opens it
“Design an online learning platform where instructors publish courses and students enroll, view lessons, and track completion. Support large enrollment spikes and reliable progress across devices.”
The prompt is vague on purpose. The first minutes are for you. Reduce the prompt to the core features and agree on the numbers before you draw.
What to clarify first
- Users and catalog size
- Daily traffic and read:write mix
- Peak traffic
- Lesson format
- Enrollment, access, and completion rules
- Latency
- Consistency and availability
- Durability and retention
- Course changes
- Scope boundaries
The interviewer has the answers. In a SysRound round, Alex gives these answers, as a real interviewer does.
Scope of a strong answer
Core requirements
- Create and publish courses with video and text lessons
- Enroll students and control lesson access
- Deliver lessons during large enrollment spikes
- Record lesson completion and show progress across devices
Usually out of scope
- Payments and subscriptions
- Live classes
- Exams and certificate rules
- Recommendations and advanced search
- Protection against screen capture
What interviewers ask about
- Enrollment during a course launch
- One course attracts hundreds of thousands of requests within a minute. Repeated requests must not create extra enrollments or block existing students.
- Lesson completion across devices
- Devices repeat requests and receive responses in different orders. A completion error can change the student's course status indefinitely.
- Course changes after publication
- A course can change while students study it. Partial publication or a changed lesson count can make completed work appear incomplete.
- Lesson delivery and access
- Video traffic greatly exceeds application traffic. Active lessons must survive an application outage without exposing permanent public media access.
Common mistakes
- The design treats video delivery and metadata requests as the same traffic.
- The server stores a client-provided percentage as the only progress record.
- The server counts repeated completion requests more than once.
- Every enrollment updates one shared course counter.
- Course edits change existing progress without an explicit rule.
- The server trusts stale catalog or access data for decisions that require current state.
The bar by level
- Senior (L5/E5)
- Handles launch overload and concurrent completion. Uses authoritative version selection and atomic publication. Explains durable acknowledgments and playback continuity during application outages.
- Staff (L6+/E6+)
- Quantifies database limits and defines shard boundaries. Preserves publication rules across separate stores. Defines regional failure behavior and course migration rules without weakening progress guarantees.
Sources · 1 reference
These records explain where the question appears. A company tag or candidate report does not guarantee a future interview question.
SysRound · 1 record
No company association
Design an online learning platform like Coursera
Reported date not specified
Source snapshot: Nov 12, 2026
View source