Software Engineer, Native Windows Development (Contract)

  • Location
  • San Francisco
  • Last Published
  • Dec. 11, 2024
  • Sector
  • Business Applications
  • Function
  • Software Engineering

About Us:

We're on a mission to make it possible for every person, team, and company to be able to tailor their software to solve any problem and take on any challenge. Computers may be our most powerful tools, but most of us can't build or modify the software we use on them every day. At Notion, we want to change this with focus, design, and craft.

We've been working on this together since 2016, and have customers like Pixar, Mitsubishi, Figma, Plaid, Match Group, and thousands more on this journey with us. Today, we're growing fast and excited for new teammates to join us who are the best at what they do. We're passionate about building a company as diverse and creative as the millions of people Notion reaches worldwide.

Notion is an in person company, and currently requires its employees to come to the office for two Anchor Days (Mondays & Thursdays) and requests that employees spend the majority of their week in the office (including a third day).

About The Role:

Notion.exe is the Electron-based frame through which many of our most active and engaged users experience Notion. We have several Electron core maintainers on our team to drive cross-platform features and would love to add platform-specific expertise — someone who’s used to working in Visual Studio, with the Windows API, and has opinions about how to best integrate with the world’s most popular operating system. This will help us serve our Windows users, who form the majority of all users and a super-majority of enterprise users, better.

What you’ll achieve:

  • You’ll define the roadmap for Windows and enterprise-specific features in Notion for Windows.
  • You’ll help us integrate our classic win32 application with the Windows packaging system, ideally using C++ and native Node.js addons.
  • You’ll build a fully native installer for Notion’s applications on Windows that’s tiny, fast, and resilient.
  • You'll help build and improve internal tools with simplicity and productivity in mind.
  • We value building high quality apps. We want to build the best possible version of Notion on Windows and want to honor the conventions and possibilities on that platform. You'll improve the performance, reliability, and polish of our Windows app.
  • You will also get to work with the web stack to improve the end-to-end experience.
  • If you’re interested, you have the chance to contribute to or become a maintainer of one of the most-used open source projects - Electron, a cross-platform C++ and Objective-C framework. Electron’s C++ powers 1Password, Figma, Slack, Visual Studio Code, and countless other apps on Windows. Help us make them better!

Skills You'll Need to Bring:

  • Windows development experience: You have used written native Windows applications using Microsoft’s native stack to build applications in the past and want to continue working on the platform. We don’t particularly care if your preferred language of choice is C#, C++, or Rust.
  • Enthusiasm to learn TypeScript, React, and Node.js: While ****we are primarily looking for Windows expertise, this role will require working with our web stack. No previous experience is required and we’ll provide the guidance and space needed to ramp up.
  • Pragmatic and business-oriented: You care about business impact and prioritize projects accordingly. You're not just going after cool stuff—you understand the balance between craft, speed, and the bottom line.
  • Put users first: You think critically about the implications of what you're building, and how it shapes real people's lives. You understand that reach comes with responsibility for our impact—good and bad.
  • Not ideological about technology: To you, technologies and programming languages are about tradeoffs. You may be opinionated, but you're not ideological and can learn new technologies as you go.
  • Empathetic communication: You communicate nuanced ideas clearly, whether you're explaining technical decisions in writing or brainstorming in real time. In disagreements, you engage thoughtfully with other perspectives and compromise when needed.
  • Team player: For you, work isn't a solo endeavor. You enjoy collaborating cross-functionally to accomplish shared goals, and you care about learning, growing, and helping others to do the same.

Nice to Haves:

  • You have some experience interacting with the Windows API through C++.
  • You're proficient with other parts of our technology stack: React, TypeScript, Node.js, Postgres.
  • You've heard of computing pioneers like Ada Lovelace, Douglas Engelbart, Alan Kay, and others—and understand why we're big fans of their work.

We hire talented and passionate people from a variety of backgrounds because we want our global employee base to represent the wide diversity of our customers. If you’re excited about a role but your past experience doesn’t align perfectly with every bullet point listed in the job description, we still encourage you to apply. If you’re a builder at heart, share our company values, and enthusiastic about making software toolmaking ubiquitous, we want to hear from you.

Notion is proud to be an equal opportunity employer. We do not discriminate in hiring or any employment decision based on race, color, religion, national origin, age, sex (including pregnancy, childbirth, or related medical conditions), marital status, ancestry, physical or mental disability, genetic information, veteran status, gender identity or expression, sexual orientation, or other applicable legally protected characteristic. Notion considers qualified applicants with criminal histories, consistent with applicable federal, state and local law. Notion is also committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If you need assistance or an accommodation due to a disability, please let your recruiter know.

#LI-Onsite

By clicking “Submit Application”, I understand and agree that Notion and its affiliates and subsidiaries will collect and process my information in accordance with Notion’s Global Recruiting Privacy Policy.