Nethermind
Web3 Senior Software Engineer (Rust, Go)
We are a team of builders and researchers on a mission to empower enterprises and developers worldwide to access and build on decentralized systems.
Our expertise covers several domains: Ethereum and Starknet protocol engineering, layer-2, cryptography research, protocol research, decentralized finance (DeFi), security auditing, formal verification, real-time monitoring, smart contract development, and dapps and enterprise engineering.
Working to solve some of the most challenging problems in the blockchain space, we frequently collaborate with renowned companies, such as Ethereum Foundation, Starknet Foundation, Gnosis Chain, Flashbots, Forta Protocol, Lido, EigenLayer, Open Zeppelin, RISCZero, Aleph Zero, and many more.
Today, we are a 350+ strong team working remotely across 66+ countries.
View all our open positions here: https://www.nethermind.io/open-roles
How to know if you're a good fit for this role
if you love tackling novel and ambiguous problems in a face-paced environment, this is the role for you. We are looking for entrepreneurial, independent builders who can confidently make sound technical decisions that have a significant impact on the product and company.
Examples of projects the team has worked on:
- Building of Ethereum client from scratch
- Implementation of Snap Sync protocol that improves the speed of Ethereum node synchronization over the network
- The Merge - implementation and migration from Proof of Work to Proof of Stake
- Performance improvements to an internal virtual machine (EVM)
- Improvements to memory management
- Design and implementation of efficient and robust data stores and caching
- Libp2p implementation in C#
Are you the one?
The role of our Protocol Engineering team is to build state-of-the-art blockchain clients (nodes).
- R&D working culture
- Designing and building distributed and fault-tolerant systems
- An appreciation of scalable, high availability and low latency architectures
- Implementing networking layer and P2P protocols
- Processing and management of large data sets with strict real-time performance requirements
- Optimizing software performance
- Opportunity to work with the top software engineers and research professionals to solve the toughest technical challenges
- Working with the latest tools and technologies
- Troubleshooting
Skills:
- Ability to implement efficient algorithms and design complex data structures
- Excellent programming skills, C# or Rust or GO preferred but will also consider other tech stacks (e.g. Java, C++)
- An understanding of good software architecture
- Ability to write clean, testable and maintainable code without over-engineering
- An entrepreneurial nature, willing to take ownership and run toward problems
- Several years of experience in software development
- Strong computer science background
- A fascination with the inner working of blockchains
It is not essential but, if you have deep knowledge in one of the following areas then we would love to talk to you:
- Distributed networks (P2P)
- Performance and memory optimisations
- Blockchain / EVM / TransactionPool / JSON RPC
- Complex data structures for example Patricia-Merkle/Verkle tries
- NoSQL Key Values databases for example RocksDB
- Cryptography
Requirement
- Minimum of 7 years of hands-on experience in software development
- Proven track record of leading and mentoring engineering teams to deliver high-quality solutions
- Strong problem-solving skills and ability to architect complex software systems
Perks and benefits:
- Fully remote
- Flexible working hours
- Plus equity