Blockchain Core Developer - Golang, Ethereum
Job Description
About Clearmatics
Clearmatics is a blockchain protocol engineering company that builds decentralised financial market infrastructures that are more open, efficient, and resilient than those serving legacy market structures of today.
We have a bold vision for this new market infrastructure - enabling market participants to solve currently unaddressed problems of the real economy, including “missing markets” problems. We aim to achieve our vision through technologies that allow peer-to-peer trading and settlement within new markets, and with digital assets whose values track real-world risk factors that currently have no suitable expression in legacy markets.
No matter the nature of a risk factor, whether macro-economic or climactic, our mission is to make important risk factors tradable; by anyone, anywhere, without reliance on financial intermediaries. We are building this new infrastructure in collaboration with incredible trading and blockchain communities.
Clearmatics was founded in 2015, and we have ever since been committed advocates of Open Source development, and active participants in the blockchain and cryptography research communities. We’ve also been an active participant and supporter of decentralized infrastructure initiatives.
We’re looking to hire a Core Developer to expand our Layer 1 Engineering team.
Our stack is Ethereum-like, so familiarity with – and passion for – the space is key.
Some of the areas we tackle include blockchain infrastructure optimised for financial use-cases, protocols for specific applications (such as smart contract-based derivatives, synthetic assets, cryptocurrency stabilization, …), scalability and privacy through cryptography (zkSNARKs, multiparty computation, private transactions/assets).
About You
You’re a systems programmer with good knowledge of Layer 1 protocols, and a passion for blockchain and decentralisation. You enjoy working to a high standard and writing code that is clean, performant, and maintainable. You appreciate the importance of careful design choices and can anticipate the impact of code changes on wider system behaviour. You can demonstrate a strong interest in blockchain and may even have open source contributions that you can highlight. You express yourself clearly in writing and in discussions.
Responsibilities
You will be involved at all stages of the development lifecycle for the Autonity protocol and its blockchain node client (a fork of go-ethereum). These include:
- Implementing new protocol features in Go and Solidity
- Developing new distributed systems tests and frameworks
- Contributing to protocol and design specifications
- Working with members of the community to resolve issues
Your work will ensure that Autonity client is correct, reliable, performant, and secure. This will enable Autonity to serve as the foundational layer for a new ecosystem of decentralised markets.
Requirements
- At least a Bachelor’s degree in Computer Science or a related field
- Strong programming skills in a low-level language like Go, Rust, or C++ (ideally 2+ years with Go)
- Experience with network, concurrent, and distributed programming/debugging on Linux systems
- Good knowledge of Ethereum protocols, BFT and dPoS consensus, P2P messaging, and crypto primitives
Bonus points
- Experience developing on a blockchain node client (preferably Ethereum-like)
- Knowledge of distributed systems theory obtained from coursework or self-study
- Smart contract programming experience using Solidity and Web3 APIs
Our compensation is blockchain competitive and dependent on your skills & experience.
Company Overview
Does your job hunt have you stressed out? This is the best book we've read to help you find your next role.