# How Figma Rebuilt Its Multiplayer Engine for 500 Users per File Page: https://stenobird.com/podcast/the-cto-podcast-with-fexingo-technical-leadership-architecture-and-engineering-org-7871807/how-figma-rebuilt-its-multiplayer-engine-for-500-users-per-file Text version: https://stenobird.com/podcast/the-cto-podcast-with-fexingo-technical-leadership-architecture-and-engineering-org-7871807/how-figma-rebuilt-its-multiplayer-engine-for-500-users-per-file.md Podcast: [The CTO Podcast with Fexingo: Technical Leadership, Architecture, and Engineering Org](https://stenobird.com/podcast/the-cto-podcast-with-fexingo-technical-leadership-architecture-and-engineering-org-7871807) Published: 2026-06-17T19:12:14+00:00 Episode link: https://audio.fexingo.com/business/the-cto-podcast/episode-0057.mp3 Audio file: https://audio.fexingo.com/business/the-cto-podcast/episode-0057.mp3 Processing state: not_requested JSON: https://stenobird.com/v1/public/podcasts/the-cto-podcast-with-fexingo-technical-leadership-architecture-and-engineering-org-7871807/episodes/how-figma-rebuilt-its-multiplayer-engine-for-500-users-per-file Duration seconds: 386 ## Resource Figma's multiplayer engine lets hundreds of designers edit the same file simultaneously. How did they rebuild it from scratch to handle over 500 concurrent users per document without conflicts or lag? Lucas and Luna break down the architecture: the shift from CRDTs to a custom conflict-resolution layer, the 'change tree' data structure that replaced operational transforms, and the decision to move from WebSockets to WebRTC data channels for sub-200ms sync. They also discuss the engineering trade-offs: why Figma chose JavaScript over Rust for the client, how they handle undo/redo in a multi-user environment, and the surprising bottleneck that was the browser's own garbage collector. A concrete look at real-time collaboration at scale. #Figma #MultiplayerEngine #RealTimeCollaboration #CRDT #OperationalTransform #WebRTC #ConflictResolution #JavaScript #BrowserPerformance #GarbageCollection #UndoRedo #ChangeTree #Engineering #Architecture #TechLeadership #BusinessAndTechnology #FexingoBusiness #BusinessPodcast Keep every episode free: buymeacoffee.com/fexingo ## Actions - request_transcript: `POST https://stenobird.com/v1/public/podcasts/the-cto-podcast-with-fexingo-technical-leadership-architecture-and-engineering-org-7871807/episodes/how-figma-rebuilt-its-multiplayer-engine-for-500-users-per-file/transcription-requests` — Idempotently request low-priority transcript generation for this episode. - read_markdown: `GET https://stenobird.com/podcast/the-cto-podcast-with-fexingo-technical-leadership-architecture-and-engineering-org-7871807/how-figma-rebuilt-its-multiplayer-engine-for-500-users-per-file.md` — Read the agent-friendly Markdown representation of this episode resource. A page view does not enqueue transcription. Agents should invoke `request_transcript` explicitly when they need this episode processed. ## Transcript Full transcripts are not published on public pages unless there is a clear rights basis.