Protocol Engineer, (Rust) Forest

ChainSafe Systems | The only blockchain R&D firm with a multi-chain perspective

About

ChainSafe Systems is an R&D firm specializing in blockchain and web3 infrastructure. We believe that empowering developers with blockchain-agnostic tools is essential for the future of decentralized systems.

Overview

Toronto, Ontario, Canada

Job Description

ChainSafe Systems, a blockchain research and development company, is seeking dedicated Protocol Engineers to join our Forest (Filecoin implementation in Rust) team.

As a protocol engineer for Forest, you will join a small team and develop and maintain the Rust implementation of the Filecoin blockchain protocol, often referred to as a node or a blockchain client. You will be tasked with implementing new features, occasionally from a technical specification or a reference implementation; maintaining existing features; and ensuring the implementation stays compatible with the current specification of the protocol, and updating the code when upgrades are made to the network. Every implementation is open-source. The position is full-time and remote-friendly.

As a protocol engineer, you have a desire to implement and deploy novel protocols that have never been implemented before in that language, you have a passion for open-source software and understanding that you will be maintaining code that will be widely used on a decentralized network, you are able to clearly communicate and document your thoughts, and you have a desire to contribute to the space.

Responsibilities

  • Read and understand a protocol specification and be able to break it into issues and turn it into Rust code
  • Design and implement new features for the client
  • Refactor and improve existing features in the client
  • Ensure the client says compatible with the other client implementations
  • Collaborate with and assist team members on their issues
  • Collaborate with other protocol implementation teams to share knowledge on the protocol, whether it be high-level protocol details or technical details that are common to every client
  • Communicate effectively with the team and document your code and the client as a whole

Required skills and experience

  • Proficiency in Rust
  • Knowledge of system design in Rust
  • Be able to proactively dive into novel territory and share knowledge on what you’ve learned

Nice to have

  • Experience with Go, as the Filecoin reference implementation (Lotus) is written in Go
  • Experience with blockchain protocols, whether it be usage of a blockchain API, knowledge of how a blockchain operates, or any other experience
  • Experience with distributed systems, peer-to-peer systems, network programming, and cryptography
  • Experience writing software from a technical specification or a reference implementation
  • Experience maintaining a large codebase with many components and keeping it well-designed, future-proofed, and modular
  • Experience with documenting a large codebase, both for internal and user-facing components
  • Familiarity with open-source software principles

ChainSafe is a remote-first company with an international team. We offer opportunities for personal and professional learning and growth, value autonomy and responsibility, and have a results-driven environment, flexible work hours and time-off policy, as well as competitive salary.

Apply for job

To apply for this job please visit boards.greenhouse.io.

×

Add New Company