The role as a Core Engineer within the Zcash Foundation team will be responsible for working with the engineering team to build and its associated projects. The ideal candidate will embody the Foundation’s values while fully aligning with its and . Currently the engineering team is working on , an independent implementation of the Zcash protocol written in Rust, and over the coming year, the team will expand its scope to include user-facing functionality, as well as new functionality, such as support for FROST. The position reports to the Zcash Foundation’s engineering manager.
Responsibilities will include:
- Implementing the core Zcash protocol and associated functionality
- Maintaining deployed software, fixing bugs, and identifying improvements to the protocol for the future.
- Writing about our work, and interfacing with external stakeholders such as those who use our software and interoperable implementations of the Zcash protocol.
The ideal candidate will likely possess many (but not necessarily all) of the following personal attributes, skills, and experience:
- Experience building software in the Rust programming language
- Strong testing skills, including writing automated tests
- Experience designing and/or implementing complex distributed systems.
- Computer science background
- Experience designing and/or implementing zero-knowledge proof systems
- Deep technical understanding of internet privacy technologies
- Team player
- Strong written and oral communication skills.
- Knowledge of cryptocurrencies, particularly Zcash.
When evaluating candidates, the Foundation will primarily evaluate candidates on the results of their take home project and interviews. Additionally, we look at work samples and collaborative interviews for further evaluation.
To apply, please submit the following to the link:
- Software sample
- Writing sample
- Presentation sample
- Resume (or equivalent)
We will follow up within a week of your submission.
We expect this position to contribute to producing engineering artifacts that meet the needs of our projects. We use past work to evaluate how you will likely perform in future work for the foundation. If you don’t have existing public work, that’s OK — just pick something you’ve done and describe it for us in as much detail as necessary to understand it.
We work remotely on an open source project, so most of our communication with each other, our users, and external contributors happens through text. Send us some writing that you’re proud of. This could be something like:
- Block comment in source code
- Blog post or other long-form article
- Github or forum post (preferably discussing a technical topic)
- Design document or specification
- Whitepaper or academic publication
It’s important to be able to make our work legible both to our collaborators and to the public we serve. Along with writing well, oral presentation skills are an important vehicle for this kind of communication. If you’ve given a technical presentation that is publicly available, please provide a link to the slides and video (if available).
If you don’t have a publicly available presentation, please describe a topic you’ve presented in the past.
There will be two technical interviews and at least one non-technical interview, all conducted over video chat.
- A take home coding exercise, in which you will be asked to complete a task in the Zebra codebase, which we estimate to take 4-6 hours. The results of the exercise will be reviewed as part of a ‘code review’ video call / interview.
- One technical interview will focus on work style and take the form of a. You and your interviewer will pick an open issue in one of our projects and work on fixing it together.
- The other technical interview will be a system design interview. You and your interviewer will talk through a model distributed system that’s representative of the kind of things we work on.
- The non-technical interview will be a conversation focused on your alignment with the Foundation’s values, mission and goals.
All interviews will be conducted over Google Meet.