Sign up

Senior SDK Software Engineer-C++

Posted: 28 days ago by chovy

About the position

Ditto aims to expand the internet beyond traditional reach. Our groundbreaking software empowers devices to synchronize data in real-time, using cutting-edge, peer-to-peer database technology that runs on mobile, web, IoT, and server systems, automatically syncing data changes.

The ideal candidate has professional experience with C++ and previous work experience developing SDKs, libraries, APIs, and developer tools. You are also an outstanding communicator and will work with a remote team, manage your own time, and tackle interesting problems. Some travel is required for team-wide and company-wide offsite meetups.

The SDKs team at Ditto is responsible for building and distributing SDKs for several language bindings and platforms, such as JavaScript, Android, iOS, C#, .NET, MAUI, Xamarin, React Native, Rust, C++, and Flutter.

As the Senior SDK Engineer, you will:

  • Assume responsibility for overseeing the development and maintenance of the Ditto C++ SDK to ensure its alignment with industry-leading standards for C++ SDKs.
  • Expose public APIs to the C++ SDK that feel native.
  • Ensure the SDK is compatible across a range of architectures and platforms.
  • Write extensive tests to improve the quality of the SDK.
  • Collaborate with the QA department to ensure the quality of the SDK.
  • Work closely with the support and sales teams to debug customer issues.
  • Mentor the team and advocate best practices in the C++ programming language.

What you'll need:

  • Strong expertise in the C++ programming language
    • Modern C++ (move constructors, destructors, virtual methods).
    • Experience working with C libraries (linkage and compilation, C FFI)
  • Strong communication skills, particularly written communication skills. As a fully distributed team, async communication is the norm, and the development process often includes written architecture and design documents.

Nice to Haves:

  • Experience working with build systems, in particular but not limited to Makefile & CMake (e.g. Nix, Bazel, Cargo, etc.)
  • Experience working with Rust FFIs and unsafe code
  • Experience working with mobile SDKs (iOS, Android, etc.)
  • Fluency in other programming languages for which Ditto publishes a native SDK (e.g., Kotlin/Java, Swift, Rust, JavaScript, or C#)

About Ditto

Ditto is on a mission to free applications and developers of syncing data, enabling real-time data synchronization even in areas without internet access. As a globally remote team, we prioritize trust, communication, and continuous improvement as our core values. We strongly believe in celebrating diversity and strive to create a team that encompasses a wide range of backgrounds, skill sets, and perspectives.

Benefits we offer:

  • Competitive salaries

  • Stock options

  • Medical, dental, vision, life, and disability coverage

  • Flexible spending account (FSA)

  • Flexible vacation policy

  • 401(k) plan 

Come join our remote team and discover the possibilities of your best career!

Equal Opportunity Employer: Ditto is proud to be an equal-opportunity employer. We do not discriminate in hiring or any employment decision based on race, color, religion, national origin, age, sex (including pregnancy, childbirth, or related medical conditions), marital status, ancestry, physical or mental disability, genetic information, veteran status, gender identity or expression, sexual orientation, or other applicable legally protected characteristics. Ditto is committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If you need assistance or an accommodation due to a disability, please let us know.

Ditto Recruiting Privacy Notice

Post a job for free today!

Recruiters and hiring companies are free to post jobs on Grazily. Don't miss out and get your posting in front of the other 273k jobs we have discovered.

Post a job!