Software Engineer - Editor

149-350K
javascripteditingpublishingsoftware-engineeringfront-end

The Figma Editor is the heart and soul of our core product and has set a new standard for what’s possible on the web. Our users spend hours in the Editor each day brainstorming, iterating on designs, crafting prototypes, and getting feedback at all stages of the creative process. Figma is the only professional design tool that empowers entire teams to design together in real time via a high-performance browser-based graphics application—even with intermittent internet connectivity and network bandwidth—which presents unique technical challenges around how we craft our UX and data models. 

Everything you see on the canvas in the Figma Editor uses C++, which compiles to WebAssembly to run in the browser and offer more control over performance, memory management, and rendering. We use Typescript and React/Redux for the UI around the canvas, where key elements like the properties panel, toolbar, and modals live. Typescript gives us type checking capability, more guardrails around code correctness, and allows us to generate HTML and CSS in order to take advantage of more standard UI patterns. We have a service-oriented architecture and use Ruby/Sinatra, Go, and Rust on the backend for Figma’s main API server. Professional experience with these languages and technologies is not a requirement. We encourage candidates to use the programming language that they’re most comfortable with during interviews—new hires will be ramped in our codebase during onboarding.

Figma is a highly collaborative organization and most projects are owned by small teams of 2-3 people. You’ll form strong relationships with product managers and designers, and can expect to partner regularly with engineers and leaders beyond your immediate team. We strive to foster an inclusive culture that promotes equity and belonging, and use the following values to guide how we work together: communicate early and often, lift your team, focus on craftsmanship, and prioritize impact. You can learn more about our engineering values and how we developed them here.

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:

  • Building new features in a real time, multiplayer system with a complex data model that enables collaboration across files

  • Solving for performance and memory optimizations—we want to keep pushing the limits of what it's possible to create in a browser while maintaining a highly performant UX

  • Building tooling for authoring prototype behavior in the Editor, allowing users to create dynamic, interactive designs

  • Extending and scaling the Editor and full stack system behind our design system features, enabling teams to build best-in-class design systems that work well with production components

  • Contributing to mapping out an accessibility strategy, which may include improvements to the Figma UI (contrast, keyboard navigability, etc.) as well as tools to help people generate accessible content as they do their own work

We’d love to hear from you if you have:

  • 4+ years of professional experience shipping user-facing features or products as a full-stack developer

  • Demonstrated fluency with one or more programming languages, including: Typescript/Javascript, React, C++, Python, Java, Objective-C, Go, or Rust

  • Experience communicating and working across functions to proactively drive solutions

While it’s not required, it’s an added plus if you also have:

  • 2+ years of experience operating in a technical lead capacity 

  • Experience in and a desire to teach fellow engineers through pairing, code review, and in-the-moment feedback.

  • Experience working on editors

  • Experience writing C++ (or related languages such as Objective C or C) in a user-facing context (e.g. gaming, native applications).

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.

#LI-Remot

Salarioo

Say goodbye to salary secrets and hello to thousands of tech jobs with upfront pay. Join us in redefining job searches where transparency isn't an option, it's a guarantee!.

© 2023 Salarioo.com, Inc. All rights reserved.