Software Engineer - Desktop
We’re looking for a desktop engineer to join our native apps team and continue making our desktop app the best way to experience Figma on macOS and Windows. The Figma Desktop Engineering team is highly collaborative and most projects cover a wide technical scope given the nature and customer impact of the app. We strive to foster a positive, inclusive culture — you can read more about our engineering values on our blog.
This is a full time role that can be held from one of our US hubs or remotely in the United States.
What you'll do at Figma:
Work closely with designers and PMs to ensure the best desktop experience for Figma
Shape requirements and lead engineering projects relating to the desktop and web experiences
Share responsibility for testing, releasing, and maintaining our desktop application and related developer tools and processes
Communicate and document architectural designs, requirements, and best practices
Provide thoughtful feedback to others on the team
Help interview and recruit more talented engineers to Figma
Some projects you could work on:
Creating brand new native features like a tray menu, screen recording, notifications, and window/tab management
Augmenting web features like supporting locally installed fonts, caption generation for voice calls, force touch support, and OS menu integrations
We'd love to hear from you if you have:
3+ years experience developing cross-platform JavaScript applications using Electron, Node, and React or working in large C/C++ codebases (e.g. browsers, compilers, or kernels)
Experience or the ability to learn and work in multiple languages (TypeScript, C++, Rust)
While it’s not required, it’s an added plus if you also have:
Familiarity with native operating system APIs (Win32, Cocoa/UIKit, iOS, Android)
Familiarity with the internals of Electron, Chromium, Node.js and V8, and deep understanding of JavaScript (e.g. memory management/garbage collection, event loop, microtasks)
Previous experience improving Continuous Integration systems for Electron-based projects and integration with their web counterpart systems around performance, costs, and developer experience
Experience working with Figma & FigJam to have a strong sense of user empathy
At Figma, one of our values is Grow as you go. We believe in hiring smart, curious people who are excited to learn and develop their skills. If you’re excited about this role but your past experience doesn’t align perfectly with the points outlined in the job description, we encourage you to apply anyways. You may be just the right candidate for this or other roles.
About the job
Apply for this position
Software Engineer - Desktop
We’re looking for a desktop engineer to join our native apps team and continue making our desktop app the best way to experience Figma on macOS and Windows. The Figma Desktop Engineering team is highly collaborative and most projects cover a wide technical scope given the nature and customer impact of the app. We strive to foster a positive, inclusive culture — you can read more about our engineering values on our blog.
This is a full time role that can be held from one of our US hubs or remotely in the United States.
What you'll do at Figma:
Work closely with designers and PMs to ensure the best desktop experience for Figma
Shape requirements and lead engineering projects relating to the desktop and web experiences
Share responsibility for testing, releasing, and maintaining our desktop application and related developer tools and processes
Communicate and document architectural designs, requirements, and best practices
Provide thoughtful feedback to others on the team
Help interview and recruit more talented engineers to Figma
Some projects you could work on:
Creating brand new native features like a tray menu, screen recording, notifications, and window/tab management
Augmenting web features like supporting locally installed fonts, caption generation for voice calls, force touch support, and OS menu integrations
We'd love to hear from you if you have:
3+ years experience developing cross-platform JavaScript applications using Electron, Node, and React or working in large C/C++ codebases (e.g. browsers, compilers, or kernels)
Experience or the ability to learn and work in multiple languages (TypeScript, C++, Rust)
While it’s not required, it’s an added plus if you also have:
Familiarity with native operating system APIs (Win32, Cocoa/UIKit, iOS, Android)
Familiarity with the internals of Electron, Chromium, Node.js and V8, and deep understanding of JavaScript (e.g. memory management/garbage collection, event loop, microtasks)
Previous experience improving Continuous Integration systems for Electron-based projects and integration with their web counterpart systems around performance, costs, and developer experience
Experience working with Figma & FigJam to have a strong sense of user empathy
At Figma, one of our values is Grow as you go. We believe in hiring smart, curious people who are excited to learn and develop their skills. If you’re excited about this role but your past experience doesn’t align perfectly with the points outlined in the job description, we encourage you to apply anyways. You may be just the right candidate for this or other roles.