What to Expect in the Figma System Design Interview

Figma's system design interview covers the classic material (pub/sub, caching, rate limiting, sharded databases) with a company-shaped tilt: real-time collaboration. Figma's core product is a multiplayer editor whose synchronization engineering famously beat better-resourced competitors, and its design questions lean toward the problems that engineering implies: scaling WebSocket connections, routing clients with connection affinity, recovering state after disconnects, and fanning out updates with low latency. Senior candidates often get two design conversations in the onsite, one of which usually carries this real-time flavor.

The evaluation style matches the rest of Figma's loop: collaborative and product-aware. Interviewers expect you to ask what the user experience requires before architecting, engage with hints as a teammate, and connect technical choices to what users feel (latency you can see, edits that vanish, cursors that jump).

Commonly Reported Questions and Themes

  • Design a real-time collaborative editing service. The signature theme, in various guises: a shared document, a whiteboard, a multiplayer canvas. Probes: how edits merge, what happens on conflict, and how a late-joining client catches up.
  • Design presence and cursors. Show who is in the file and where they are pointing, for thousands of concurrent files: high-frequency ephemeral updates, where durability does not matter but latency does.
  • Scale a WebSocket layer. Millions of concurrent connections: connection-affinity routing (a client must reach the server holding its session state), load balancing long-lived connections, draining servers during deploys, and reconnect storms after a network blip.
  • State recovery on disconnect. A client drops for ten seconds or ten hours: snapshots versus operation logs, catch-up strategies, and when you give up and send the whole document.
  • Classic infrastructure with product context. Rate limiters, notification fan-out, file version history, and comment systems, usually framed inside a Figma-like product.

What Interviewers Are Probing

  1. Requirements through the user's eyes. The right opening questions are experience questions: how fast must a collaborator's edit appear (about 100 milliseconds before it feels laggy), what happens to unsent edits when a laptop lid closes, how many people share a document in practice. Deriving the technical targets from felt experience is the Figma-native move.
  2. Conflict resolution literacy, not a CRDT lecture. You do not need to derive CRDTs on a whiteboard. You do need the practical landscape: last-writer-wins per property (Figma's actual approach for most document state) versus operational transforms versus CRDTs, and the honest tradeoff: simpler merge semantics that occasionally lose a concurrent edit versus heavy machinery that never does. Knowing why "per-property last-writer-wins with a server as the ordering authority" is often enough demonstrates more understanding than name-dropping the fancier options.
  3. The stateful-connection problem. Real-time systems break the stateless-web playbook. Interviewers watch whether you handle it: sessions pinned to servers, what happens when that server dies (state handoff or client-driven recovery), and how you deploy without dropping everyone.
  4. Fan-out mechanics. One edit, thirty subscribers, sixty times a second: batching and coalescing updates, per-client send queues with backpressure, and cutting update frequency for background tabs.
  5. Degradation as product design. When the sync service struggles, what does the user see: read-only mode, local-only edits with later sync, or an honest offline banner? Designing the failure experience, not just the failure handling, earns Figma-specific credit.

Walkthrough Sketch: Multiplayer Document Sync

Scope it: documents with up to, say, 50 concurrent editors, sub-150-millisecond edit propagation, editors may disconnect and return, and history must be recoverable. Client model: each client keeps a local copy, applies its own edits optimistically (typing must never wait on the network), and sends operations to the server. Server model: one authoritative session per active document (single writer, which kills most coordination complexity), pinned via connection-affinity routing; the session orders operations, resolves conflicts per property with last-writer-wins, broadcasts accepted operations to subscribers, and appends to an operation log. Snapshots every N operations bound recovery time; a returning client sends its last-seen sequence number and receives either the delta or, past a threshold, the latest snapshot.

Failure paths: the session server dies, and clients reconnect through the router to a new server, which rebuilds from snapshot plus log; unacknowledged client edits are resent (operations carry client IDs and sequence numbers, so replay is idempotent). Reconnect storms after a network event get jittered backoff and connection-rate limiting so the fleet does not fall over twice. Presence and cursors ride a separate, cheaper channel with no durability, coalesced to 30 updates per second, because losing a cursor position costs nothing and this separation keeps the critical path lean. Close with what you monitor: end-to-end edit latency percentiles, catch-up durations, conflict rates, and concurrent connections per server.

How to Prepare

For the full loop, see What is the Figma interview process like?, prepare the collaboration rounds with Top Figma behavioral interview questions, and have your answer to "Why Figma?" ready before the recruiter call.

TAGS
System Design Interview
System Design Fundamentals
CONTRIBUTOR
Arslan Ahmad
Arslan Ahmad
ex-FAANG engineering manager and author or Grokking series.
-

GET YOUR FREE

Coding Questions Catalog

Design Gurus Newsletter - Latest from our Blog
Boost your coding skills with our essential coding questions catalog.
Take a step towards a better tech career now!
Explore Answers
What is a node in a distributed system?
What is Apple's interview process?
What are the weaknesses of a data analyst?
What is the entry level package of Cisco?
Who owns Cloudflare?
What are Datadog coding interview questions?
Related Courses
Grokking the Coding Interview: Patterns for Coding Questions course cover
Grokking the Coding Interview: Patterns for Coding Questions
The 24 essential patterns behind every coding interview question. Available in Java, Python, JavaScript, C++, C#, and Go. The most comprehensive coding interview course with 543 lessons. A smarter alternative to grinding LeetCode.
4.6
Discounted price for Your Region

$197

Grokking Modern AI Fundamentals course cover
Grokking Modern AI Fundamentals
Master the fundamentals of AI today to lead the tech revolution of tomorrow.
3.9
Discounted price for Your Region

$72

Grokking Data Structures & Algorithms for Coding Interviews course cover
Grokking Data Structures & Algorithms for Coding Interviews
Unlock Coding Interview Success: Dive Deep into Data Structures and Algorithms.
4
Discounted price for Your Region

$78

Design Gurus logo
One-Stop Portal For Tech Interviews.
Copyright © 2026 Design Gurus, LLC. All rights reserved.