About Ditto:

Ditto is on a mission to unleash the full power of edge devices by removing all the plumbing required to build amazing applications. Ditto is a globally remote team. Our core values are trust, communication, and continuous improvement. We celebrate diversity and strive to create a team that encompasses a wide range of backgrounds, skill sets, and perspectives.

About the position:

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#)

 

 

 

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

Apply for this Job

* Required
resume chosen  
(File types: pdf, doc, docx, txt, rtf)
cover_letter chosen  
(File types: pdf, doc, docx, txt, rtf)


Enter the verification code sent to to confirm you are not a robot, then submit your application.

This application was flagged as potential bot traffic. To resubmit your application, turn off any VPNs, clear the browser's cache and cookies, or try another browser. If you still can't submit it, contact our support team through the help center.