Senior Rust Engineer

San Francisco or Remote
Engineering

What we're looking for

Do you love writing Rust? At Ditto we bet on the language to power our cross-platform data sync system. We are growing our team and looking for others similarly passionate about the language!

The ideal candidate has professional experience with Rust and/or previous work experience with C++/C. At Ditto, we have no shortage of hard technical problems, such as mesh networking, replication protocols, CRDTs, and database design, just to name a few! Additional experience in any of these areas is a plus!

You will work collaboratively with our small but growing team, to deliver cutting edge cross-platform SDKS that will sit on mobile devices, WebAssembly-run browsers, IoT, and backend servers. We are investing heavily into Rust as we aim to create bindings for various languages with a one-click deployment.

Work with a remote team, manage your own time, and tackle interesting problems. Ditto is an equal opportunity employer with people from many different cultures and countries. We celebrate diversity and are committed to building a team that represents a variety of backgrounds, skillsets, and perspectives, and to providing our employees with a rewarding and inclusive work environment.

Responsibilities

  • Improve and create new features for Ditto's data sync platform, such as:

    • Optimize replication protocol for low bandwidth transports

    • Create novel algorithms to increase mesh topology scalability

    • Develop network protocols for unreliable, high-latency environments

    • Improve query and storage size through CRDT data structure optimizations

  • Write extensive tests to improve the quality of deployments

  • Mentor and teach team members

Requirements

  • Professional work experience with Rust

  • Expertise in low-level programming languages such as C, C++ and preferably Rust.

  • Strong knowledge of distributed systems and networking

  • Strong experience debugging complex embedded systems code

  • Strong communication skills, particularly written communication skills