Software Engineer - Consensus Protocol/Tendermint

About us:

Tendermint is building state-of-the-art consensus and networking protocols to enable internet-scale distributed applications. We’re passionate, self-driven, industry leaders whose mission is to build a better, freer internet. We're also building the Cosmos Network, a decentralized network of independent parallel blockchains, each powered by classical BFT consensus algorithms like Tendermint Core. We believe the technology we're building will have a major impact on human beings around the world. We’re well funded and growing quickly.

How we work:

Our teams leverage agile methodologies to move quickly and stay focused. Most of us work out of our offices in San Francisco, Berkeley, Toronto, and Berlin, but some of our employees work remotely. Communication is important to us and we rely heavily on Slack, Zoom, and GitHub to help us stay in sync. Everything we build is open source and available on GitHub.

Although we mostly hire senior engineers, the Tendermint Core team is looking for an exceptional junior- to mid-level engineer to join us in our office in Berlin.

This position is remote-friendly, but, due to the current geography of the team, limited to timezones between EST (GMT -5) and MSK (GMT+3).

What you will be doing:

    • Work with the Tendermint team and community to lead and maintain the Tendermint project contributions
    • Optimize our implementation of the Tendermint consensus algorithm, mempool, and p2p network
    • Ensure the reliability and security of the Tendermint implementation that brings impact into billions of token market
    • Help formalize and improve the specification of the Tendermint consensus and ensure the implementation adheres to the spec
    • Develop simulations for testing the networking layer under various configurations and attack models 

We're looking for someone who has:

    • Distributed systems experience, especially designing or implementing consensus protocols, or building P2P systems,
    • Experience developing, releasing, and maintaining production level software
    • Significant experience writing Go or other systems languages
    • A strong grasp of computer science fundamentals including network, storage, OS, data structures, etc
    • The ability to take ownership and see initiatives through
    • Exceptional communication skills

Nice to have:

    • At least 1 year of software engineering experience with open source contributions
    • Experience working remotely or with distributed teams
    • Experience with database engineering
    • Familiarity with advanced cryptography


    • If you create a substantial PR that gets approved and merged to one of our repos you're guaranteed an interview.

What we offer:

    • The opportunity to be part of building the future of the Internet
    • Flexible work schedule
    • Excellent benefits like educational budget, fitness and wellbeing spend
    • At least 4 weeks of paid vacation
    • Competitive salary package, including equity