Software Engineer - Editor

San Francisco or New York or Remote US /
Engineering /
Full-time
Figma is growing our team of passionate people on a mission to make design accessible to all. Born on the Web, Figma helps entire product teams brainstorm, create, test, and ship better designs, together. From great products to long-lasting companies, we believe that nothing great is made alone—come make with us!

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:

In 30 days, you will…
Be paired with an onboarding buddy on your team who will help you ramp in our codebase and get to know Figma. You’ll move from starter tasks meant to familiarize you with our workflows to joining your teammates on larger projects.
Get to know your Figmates across the company via team building activities, participating in our Give a Fig philanthropy efforts, joining one of our Employee Resource Groups, creating something amazing during Maker Week, or having hangs over Zoom (or in person once we’re back in one of our San Francisco or New York hubs).
In 60 days, you will…
Work closely with teammates and partners in Product, Design, Marketing, User Research, and Data Science to build new features and achieve roadmap goals. We prioritize collaboration and cross-functional partnerships, so you won’t operate in silos.
Craft performance objectives with your manager that align to company priorities and career development opportunities.
Help grow Figma by interviewing candidates for teams across the Engineering organization.
In 90 days(and beyond), you will…
Be a mentor and provide thoughtful feedback to your peers, and benefit from strong personal and professional mentorship opportunity yourself
Contribute to org-wide initiatives like new hire onboarding, developing interview processes, and Diversity, Equity, and Inclusion efforts
Continue ramping and learning. The technical challenges in the Editor are unique, fun, ambitious, and ever-evolving.

Some projects you could work on:

    • 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
    • Owning features and optimizations for Figma’s newest product FigJam, a new whiteboard space purpose-built for teams to brainstorm ideas, diagram user journeys, and more
    • 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:

    • At least 6+ years of professional experience shipping features or products as a full-stack developer, and/or operating in a tech lead capacity
    • Demonstrated fluency with one or more programming languages, including but not limited to: Typescript/Javascript, C++, Python, Java, Objective-C, Go, or Rust
    • proactive communication skills and a desire to work in a collaborative environment
    • An interest in mentorship, learning from others, and digging into new challenges
    • An inclusive approach towards building features, solving problems, investing in culture, and growing teams

Our end-to-end interview process will cover, at a high level:

    • An initial non-technical call with a recruiter
    • A live practical technical screen with an engineer using the programming language of your choice
    • A video-based conversation with the manager of your potential team
    • A fully virtual “onsite” interview with both technical/coding and non-technical/discussion-based areas of focus
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 anyway. You may be just the right candidate for this or other roles.

We will work to ensure individuals with disabilities are provided reasonable accommodation to participate in the interview process, to perform essential job functions, and to receive other benefits and privileges of employment. Please let your recruiter know if you require accommodation.

About Figma
Dylan Field and Evan Wallace co-founded Figma in 2012 with the vision of building tools for designers in the browser. Their goal was to create the first design tool that combined the accessibility of the Web with the functionality of a native app. Today Figma is a platform with tools and spaces to support the entire product development process—idea to design to build—and has simplified collaboration for companies like Microsoft, Uber, and The New York Times to name a few. 

At Figma, we celebrate and support our differences. We know employing a team rich in diverse backgrounds, experiences, and opinions allows our employees, products, and community to flourish. Figma is an equal opportunity workplace—we are dedicated to equal employment opportunities regardless of race, color, ancestry, religion, sex, national orientation, sexual orientation, age, citizenship, marital status, disability, gender identity, or Veteran status.