AdvancedSystem-Design
45 min
Design Collaborative Document Editing
RealtimeCRDT/OTStorageNetworking
Advertisement
Interview Question
Design a Google Docs–style collaborative editor with real-time edits, offline support, and conflict resolution.
Key Points to Cover
- Data model with OT or CRDTs; op logs and compaction
- Real-time transport (WebSockets) and presence cursors
- Offline edits, merges, and conflict resolution
- Access control, snapshots, and version history
- Scalability: sharding docs, fanout to collaborators
Evaluation Rubric
Sound OT/CRDT conflict strategy30% weight
Efficient real-time sync & presence25% weight
Offline merge & recovery approach25% weight
Sharding and fanout under load20% weight
Hints
- 💡CRDTs avoid centralized transformation servers.
Potential Follow-up Questions
- ❓How to compact op logs?
- ❓How to prevent edit storms?
Advertisement