Software Engineer

Oakland, California, United States

Description

Reserve’s mission

Reserve is a blockchain-based project that is developing a cryptocurrency that is supposed to be pegged to the U.S. dollar, called a stablecoin. It will be inexpensive to send and provide users access to the benefits of cryptocurrencies without the volatility. While we expect that Reserve will be valuable to traders and app developers inside the crypto ecosystem, we’re most excited about it replacing inflationary currencies and dysfunctional banks. And with the currencies in Venezuela, Argentina, Turkey, and elsewhere approaching hyperinflation, now seems like the right moment for people to choose something new.

Decentralized currencies have the opportunity to change global financial and monetary institutions for the better. If you’re excited by this idea, we would love to hear from you.

We are taking a maximally nimble approach to developing extraordinarily robust programs, and the best practices in the domains we’re working in change on a month-by-month basis. This role therefore requires substantial methodological flexibility. You will support the engineering team with its mission to efficiently ship smart contracts that are correct and secure, and adapt along the way to improved processes. Here are some example responsibilities you’ll take on towards that goal:

Helping our team maintain operational security.

Implementing and testing Ethereum smart contracts.

Implementing user interfaces for our smart contracts.

Learning and evaluating new toolkits for testing and development.

Automating fuzz testing for smart contracts.

Researching and trying out further ways to make our software more reliable.

Closely scrutinizing your teammates’ code.

Explaining your reasoning for implementation decisions.

Writing technical documentation.

Requirements

You have demonstrable software engineering ability.

You are excited to learn and build things in new languages and frameworks.

You are adept at learning new technical concepts.

You have worked in a tightly coordinated team, and know how to sync closely with team-members.

You are willing to throw away everything you were just working on in the name of agility.