Rust WebAssembly Developer
Remote (US or Canada) /
Development – Backend Development /
Full Time Remote
60,000 businesses and millions of people use 1Password to protect their most important information. We’re a kind, curious, and customer-focused team on a mission to build the world's most-loved password manager and give people more control over their data.
The Core team here at 1Password is building libraries to share common security-critical code across our macOS, iOS, Android, and Windows apps, as well as our browser extensions and web app. Our goal is to implement a complete 1Password client backend that will power the next decade of development on everyone’s favorite password manager.
Rust is a new language, and the 1Password Core is a new project. You’ll be a pioneer, an explorer; the best practices are yours to discover, and the answers you seek are not on Stack Overflow. As a member of the team, you’ll contribute your talent and intuition to help us navigate uncharted territory, scale mountains, slay dragons, and build the future of our product and our company.
What we're looking for:
- A strong background in application architecture.
- Some programming experience with Rust in production.
- More than 2 years of experience in systems programming with other languages (C++, Go, etc).
- Experience with WASM a plus!
- Secure coding practices are second nature for you.
- An understanding of computer security, encryption, and common threat vectors.
- Admiration for team effort with ambition to take the lead on your own projects.
- Excitement for the unknown – you’re always ready to learn something new.
- Familiarity with concurrency patterns in Rust and other languages.
- Experience with cross-platform development for desktop and mobile platforms.
- Willingness to document and maintain APIs, and assist implementers in other areas of the company.
- Someone ready to work remotely and independently with self-imposed schedules, projects, and deadlines.
What you can expect in your first month:
- Meet your teammates, get to know them, and learn how your team works together.
- Review the tools and platforms that 1Password uses, familiarize yourself with our development processes, and get your development environment set up.
- Participate in code reviews.
- Tackle a few small issues that give you exposure to the full landscape of the Core.
- Ask questions. Lots of questions.
What you can expect by month 3:
- Continue to participate in code reviews.
- Join a feature team as a Core developer under the guidance of someone who’s done that before, helping the platform teams implement something new.
- Ask more questions!
What you can expect by month 6:
- Join a feature team as the primary Core developer, helping the platform teams implement something new. Or…
- …take on implementing an internal piece of the Core.
- Participate in architectural discussions.
- Proactively review merge requests posted by others on the team and work with them to get their changes merged.
- Answer questions, but still ask some too – by now you’re helping others learn as well.
The Core team is a pretty fast-moving unit that’s tackling a number of challenges across a variety of platforms. In short: it’s never boring! We’ve assembled some of the brightest, fun-loving, kind folks in software today. Join us! – Michael Fey, VP of Engineering: Client Apps