We are looking for a software engineer to help us implement PolkaBTC.
The PolkaBTC bridge connects Bitcoin with the Polkadot ecosystem in a trustless and decentralized manner and will serve as the main gateway for bringing BTC liquidity into Polkadot’s DeFi ecosystem. The design is based on top tier academic research and the implementation follows our detailed specification. The project is funded by a Web3 Foundation grant.
Your task will be to implement new modules as well as test and improve our current proof-of-concept implementation of PolkaBTC to ensure it is production-ready software in collaboration with our software engineering team. Additionally, you will write CLI-based clients that can interact with PolkaBTC. To get a better idea of what the final product should look like, check out our initial demo of the app.
The Substrate-based blockchain, as well as our CLI clients, are written in Rust. You will need to have an excellent understanding of at least one programming language (e.g. Rust/C/C++/Go) and experience with writing production-ready software (incl. E2E testing).
Experience with development in blockchain-based environments and/or distributed systems is strongly encouraged, as you will need a basic understanding of the underlying technology to ensure the security of the system in a decentralized and open environment.
Full-time and preferably based in the UK
What you will do
- Implement and test an open-source Rust (Substrate) bridge for creating Bitcoin-backed assets on Polkadot (PolkaBTC)
- Implement and test open-source clients in Rust that interact with Bitcoin and Polkadot
- Enhance our current testing setup from simple unit tests to integration and fuzz testing
- Collaborate with the other team members to ensure that we deliver the software in time and according to the specification
- Improve the design of the bridge with respect to runtime performance and security
- Contribute to other open-source projects that we integrate with
What you bring
- Experience in creating and deploying production-ready applications in a language such as Rust/C/C++/Go
- Experience with testing strategies and testing frameworks
- Understanding of distributed/decentralized computing
- Passion for secure software (specifically in Rust)
- Desire to learn and work with bleeding-edge technology
- BSc/MSc degree in Computer Science or a related field, or equivalent experience
- Proficiency in English
“Nice to have”
- In-depth understanding of Bitcoin (consensus, data structures, security model)
- Open-source contributions to a Rust-based project
- Prior experience with the Substrate Rust framework
Benefits and Perks
- Stock options
- Remote working
- Flexible working hours
- Yearly retreat
- Open-source software