# Design Figma: system design interview question

> Shared vector documents with concurrent edits, component overrides, and responsive views at large document sizes.

Source: https://sysround.com/questions/design-figma
Updated: 2026-11-05


Difficulty: hard. Levels: Senior, Staff+.

## How the interviewer opens it

"Design a browser-based interface design tool. Users share vector documents, reuse components, and edit together. Keep large documents responsive and preserve consistent shared edits."

## What to clarify first

- Scale
- Document size
- Read and write mix
- Document behavior
- Latency and client limits
- Initial view limits
- Consistency and availability
- Durability
- Disconnects
- Access and exclusions

## Scope of a strong answer

Core requirements:

- Create and edit vector shapes, text, groups, and pages
- Edit shared documents with other users
- Reuse components with instance overrides
- Keep large documents responsive

Usually out of scope:

- Full offline work
- Component libraries across documents
- Advanced typography and character-level text collaboration
- Comments, video calls, and a version history interface

## What interviewers probe

### Concurrent document edits

Concurrent edits affect both properties and document structure. Clients must agree without creating cycles, missing parents, or revived deleted nodes.

### Reconnects and server failures

Retries, tentative edits, and server failures cross different state boundaries. The service must preserve acknowledged edits and prevent duplicate changes.

### Changes to reusable components

One definition can affect thousands of instances. Concurrent overrides and nested definitions must preserve clear values without excessive work.

### Large document response

Large documents exceed the initial view budget. Dense views and remote edits can block input even when servers meet latency targets.

## Common mistakes

- Treats the tool as a shared text document and ignores document structure.
- Uses WebSockets as the complete consistency and durability design.
- Selects OT or CRDT without defining concurrent shape and group behavior.
- Copies component values into every instance without clear override rules.
- Promises fast initial views without bounds on content, assets, or visual detail.
- Confirms edits before durable commit or loses tentative edits during recovery.

## The bar by level

- **Senior:** Defines structural conflict rules, optimistic reconciliation, durable acknowledgement, and retry behavior. Connects partial document load with live edits. Bounds initial work and protects frame time.
- **Staff+:** Establishes invariants across document ownership, durable state, snapshots, and partial client state. Quantifies traffic, recovery, and initial view limits. Explains semantic and latency trade-offs when requirements change.

Practice this question with an AI interviewer: https://sysround.com/practice/new?problem=collaborative-design-tool


---
SysRound (https://sysround.com) is an AI practice tool for system design interviews. It has a voice or typed AI interviewer and a shared whiteboard. At the end, you get feedback on each skill and a model answer. The AI feedback can be wrong.
