Reserve - Senior Software Engineer

Senior Software Engineer

Reserve Oakland, California, United States of America

Description

Reserve’s mission

We believe that everyone’s money should be secure. Billions of people around the world don't have a safe place to store their money. Their banks can't be trusted. Their governments inflate their currency to pay off debts, hurting citizens. Our mission at Reserve is to change that. Reserve is a stable, decentralized currency that can’t be abused by a government. It’s globally distributed and outside of anyone’s control, so bad governments can’t shut it down.


Your role

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. In fact, we need you to help refine those practices. You will lead the engineering team in its mission to efficiently ship a smart contract that’s correct and secure. Here are some of the responsibilities you’ll take on towards that goal:

  • Designing and developing tools for testing and securing smart contracts.
  • Keenly auditing Ethereum smart contracts.
  • Automating fuzz testing for smart contracts.
  • Seeking out and insisting upon further ways to make our software more reliable.
  • Modeling the economic and game-theoretic consequences of technical choices.
  • Lucidly communicating your technical reasoning and development plans.
  • Helping our team maintain operational security.
  • Writing technical documentation.
  • Leading development of software projects.
  • Mentoring less-experienced engineers in software methodology and architecture.


Your day at Reserve

Show up at 10am for our full-team meeting. In the morning, build out a prototype for our simulated exchange. Have lunch with the engineering team, where you explain how a subtle architectural distinction affects the operation of our protocol. In the afternoon, comb through our testing plans, find types of vulnerabilities that wouldn’t be covered by them, and improve those plans. At 6pm, have some food delivered to the office and mentor another engineer about design choices they’re making.


Requirements

  • You have demonstrable experience in software engineering, technical leadership, and software architecture.
  • You are adept at learning new technical concepts.
  • You are skilled at designing new systems from scratch.
  • You are interested in learning and building things in new languages and frameworks.
  • You are willing to throw away everything you were just working on in the name of agility.
  • You're a fit for our eccentric culture (read more about it here).


In your application please link to some code that you wrote that reflects your abilities (e.g. github). 


Nice-to-haves

  • Familiarity with the blockchain industry.
  • Familiarity with Go.
  • You can think in the security mindset.

Contacts

Social links: