We’re building for a future where the internet and world economy empowers people through interactions based on consent, privacy, and free association. Where both communities and individuals flourish. To accomplish that, we’re working hard to make web3 accessible for everyone.
MetaMask is both a crypto wallet and a gateway to the decentralized web. Our tools help people create communities, play video games, access financial services, make payments, invest in assets, protect against economic turmoil, and more. Our browser extension and mobile platforms meet the needs of millions of users and developers across the world.
Originally a humble key manager, today MetaMask serves over 1,000,000 monthly active users as a decentralized application development platform, an aggregator of decentralized cryptocurrency exchanges, and a decentralized identity manager. Meanwhile, we are building towards a future where MetaMask serves as an extensible, pluggable platform upon which an immensely wide array of decentralized networks, services and user experiences can be built.
We are looking for people based in time zones between UTC-8:00 and UTC-0:00 (North and South America, Western Europe and Western Africa).
Joining our team at this time will be an opportunity to contribute to and help lead a variety of engineering initiatives critical to the future of MetaMask and the decentralized web, including:
- Building and shipping the MetaMask Snaps plugin system
- Optimizing and solidifying performance, security and stability throughout our metamask-extension codebase and its many dependencies
- Implementing delightful user experiences and interfaces that will define tomorrow’s wallets
Who We Are Looking For
We are looking for engineers who will:
- Be effective contributors to MetaMask's free and open source software from day 1
- Lead the development of features for our browser extension
- Improve MetaMask through effective review of pull requests, triaging and analysis of GitHub issues, auditing and refactoring the codebase, and testing
- Proactively contribute to team discussions about UX design, technical issues, sprint and roadmap planning, and improving team processes
- Be proficient and thoughtful with asynchronous and synchronous communication, giving and receiving feedback, and working independently and with a team
- Support their teammates’ performance and growth
- Be successful working within a fully remote environment
- Bring respect, patience, and empathy to every interaction and relationship with coworkers and the community
- Bring hustle, enthusiasm, heart and a love of shipping code and fixing bugs to their work
We are hiring at varying levels of experience. Most successful candidates will have at least a couple years of production experience. Meanwhile, there are key opportunities for individuals looking for very senior roles and responsibilities.
Successful candidates will be proficient, or be able to quickly become proficient, in the following areas:
- React and Redux
- Architecting and implementing APIs (for servers or services) in a Node.js context
- Some or all of: Node.js streams, Service Workers, generators, Observables, WebSockets
- Browsers and browser APIs
- Front-end build tools: Grunt, Gulp, webpack, or similar
- Testing: unit, integration, end-to-end
- CSS and modern libraries/extensions like Sass, SCSS, Less
While not required, experience in any of the following areas is very nice to have:
- Security engineering
- Ethereum dapp development
- Involvement in EIP authoring or review processes
- Refactoring large, complex codebases
- Design systems