Note to applicants: our headquarters is located in Berlin, but Parity has teammates distributed across the EU and beyond. Remote working arrangements are common and possible; we're happy to discuss this more during the recruiting process!

 

About Parity

At Parity Technologies we maintain and create blockchain software. We strive to write the fastest, lightest, and safest core technology in Blockchain and write lots of open-source code. Parity Technologies is based in Berlin and London, but remote work is possible for the right people and we are flexible on location.

We believe in giving back to the community and are looking for someone familiar with the open-source Rust ecosystem. You should be proficient in Rust and familiar with writing low and high-level code, a functional style of programming, and have a strong knowledge of computer science.

Parity works in a very flat hierarchy with lots of autonomy and high levels of personal responsibility, and we try to mimic an open-source workflow in much of what we do. We have an older article on our blog about our development practices which you may want to read.

 

About the position:

For this role you will be working on the Solang compiler - an LLVM frontend written in Rust that compiles Solidity to WebAssembly. This compiler targets multiple WebAssembly environments. One of them is Substrate’s module for smart contracts. An important part of your work will be to keep up with changes in the Solidity language and Substrate’s smart contracts module.

Expect to deal with LLVM IR and dig deep into Solidity language specifics in order to improve the quality of the generated code. There will be a lot of creative freedom and we expect you to identify and accomplish whatever necessary to provide first class Solidity support for our smart contracts platform.

Feature parity with the official solc compiler, improving performance and possibly inline assembly transpilation are some of the things on our roadmap.

You will be working with Alex (contract module maintainer) and be in regular contact with the ink! team.

 

Requirements:

  • Experience with Rust.
  • Experience with implementing LLVM frontends OR deep experience with Solidity.
  • Familiarity with the Rust ecosystem.

Nice to have:

For this role you will be mostly maintaining and adding new features to an existing Solidity compiler with a focus on generating WebAssembly code. Deep knowledge in one of the following areas is especially appreciated.

  • Knowing the ins and outs of the Solidity language.
  • Deep knowledge of the LLVM project and ability to upstream changes.
  • Deep knowledge of the Wasm specification and upcoming proposals.
  • Deep knowledge of the Ethereum virtual machine (EVM).

Benefits:

  • Competitive salaries and benefits.
  • Opportunity to become an expert in the latest blockchain technologies.
  • Working at Parity means focusing on stuff that matters: building cutting-edge technology for a better and more decentralized internet. Our teams enjoy a high degree of freedom and autonomy to achieve that goal.
  • Because we value initiative and learning, we've defined a generous personal improvement budget to attend conferences or skills courses of your own choosing. We think you know what's best for you!
  • Parity is a diverse company with people from various countries and we will support you with German or English language courses where needed (and desired).
  • We have a remote-friendly company setup.
  • Bringing the team together is something we value a lot and we have regular company retreats (or will have, pending the Covid pandemic).

Not a perfect match to our requirements? We're happy to receive your application anyways and hear how you think you can help us achieve our mission.

To see how we use your data please see our Applicant Notice.

Apply for this Job

* Required