Project Description
zkSNARKs are novel cryptographic primitives that are revolutionizing the scalability and privacy of distributed systems such as blockchains. arkworks is an ecosystem of Rust libraries for programming state-of-the-art zkSNARKs that is used in production by several leading projects.
Job Description
We are looking to hire a co-maintainer for core arkworks libraries. You will closely work with a group of existing maintainers at UC Berkeley.
The responsibilities of the role include:
- Timely reviews for (internal and external) PRs, including ensuring that documentation, testing and benchmarking standards are met
- Helping in triage and prioritization of issues
- Propagating dependency updates across the ecosystem
- Managing ecosystem-wide releases
- Writing and polishing documentation, examples, and tutorials Increasing coverage of tests and benchmarks
- Optimizing our benchmarking and CI infrastructure
- Helping design and implement improvements to APIs in core libraries
This is a paid position with no specific end date, and the target number of hours per week is at least 15-20. (We are open to hiring a co-maintainer full time if there is an excellent match in skills.) This is a remote position with flexible hours.
Benefits:
- The hourly rate is competitive for the above responsibilities
- Hands-on experience with implementing cutting-edge cryptographic techniques in Rust
- Getting your code deployed to state-of-the-art SNARK projects
- Mentorship from SNARK experts in Professor Alessandro Chiesa’s research group
WARNING: this is not a research position!
Requirements
- Computer science background
- Experience with the Rust language and tooling, and familiarity with common Rust idioms and best practices
- Experience in contributing to and maintaining open source projects
- Experience with writing secure code that is robust against common security pitfalls, such as denial-of-service and endianness and edge-case issues.
- Familiarity with, and interest in learning more about, core cryptographic concepts such as hash functions and encryption, and algebraic concepts such as finite fields and elliptic curves
- Strong written and oral communication skills
- Good-to-have: experience with writing comprehensive test suites and using advanced testing techniques such as fuzzing
- Good-to-have: experience implementing cryptographic protocols