Back to jobs

Staff Software Engineer, SDKs

US Remote

About Ditto:

Ditto is redefining how data moves at the edge. Our mission is to make it seamless for developers to build resilient, real-time applications, regardless of network conditions. Whether you're in a stadium, airplane, or remote military base, Ditto's peer-to-peer sync engine ensures devices stay connected and data stays consistent, even without internet. With more than $145 million in funding and trusted by organizations like Chick-fil-A, Delta Airlines, and the U.S. military, Ditto powers mission-critical experiences across aviation, retail, travel, hospitality, defense, and more. As a globally distributed, fast-growing startup, we’re committed to building a diverse and inclusive team that reflects the wide range of perspectives needed to solve the world’s hardest connectivity problems.

About the role:

As a Kotlin Multiplatform Engineer on Ditto’s SDKs team, you will play a pivotal role in simplifying real-time data synchronization for developers across multiple platforms. You’ll leverage Kotlin’s shared code capabilities to craft elegant, high-performance SDK modules that run seamlessly on Android, iOS, web, IoT, and desktop. Working closely with product managers, designers, and backend engineers, you’ll translate user needs into intuitive APIs and robust libraries—all while navigating the low-level FFI layer to connect Kotlin with our Rust core.

From day one, you’ll own the full development lifecycle: architecting shared multiplatform modules, writing and refining FFI bindings for safe, efficient cross-language calls, authoring comprehensive automated tests, and streamlining CI/CD pipelines for reliable releases. You’ll partner directly with customers and support teams to diagnose integration issues, optimize performance on resource-constrained devices, and iterate quickly on feedback.

You’ll join a small, globally distributed group that values trust, clear communication, and continuous improvement. In our async-first culture, your written design docs and code reviews carry as much weight as face-to-face meetings, and occasional offsite gatherings bring us together to share learnings and strengthen our bond. If you’re passionate about pushing the boundaries of cross-platform development, mentoring teammates on best practices, and delivering world-class SDK experiences, this is the role for you.

As a Staff SDK Engineer, you will:

  • Own the KMP SDK roadmap
    Drive the design, implementation, and ongoing maintenance of Ditto’s shared Kotlin Multiplatform libraries, ensuring they meet our high standards for reliability, performance, and developer ergonomics.


  • Craft idiomatic, platform-native APIs
    Expose public interfaces that feel natural in each target environment—Android, iOS, web, and desktop—while maximizing shared-code reuse and minimizing platform-specific boilerplate.


  • Build and maintain FFI bridges
    Implement safe, efficient Foreign-Function Interface bindings between Kotlin/Native and our Rust core, adhering to best practices for memory management, threading, and error handling.


  • Ensure cross-platform compatibility
    Manage source sets, Gradle configurations, and platform quirks to deliver seamless SDK behavior across diverse architectures and operating systems.


  • Develop comprehensive test suites
    Write and automate unit, integration, and end-to-end tests (including native interop scenarios) to continuously validate SDK functionality and guard against regressions.


  • Integrate with CI/CD pipelines
    Collaborate with the Release and QA teams to embed your tests into our continuous integration workflows, monitor release quality, and iterate rapidly on customer feedback.


  • Partner with customer support
    Triage and resolve customer-reported integration issues, debug edge-case failures in the field, and feed learnings back into product and engineering roadmaps.


  • Mentor and evangelize best practices
    Share your expertise in Kotlin Multiplatform, FFI integration, and cross-platform testing techniques through design reviews, brown-bags, and one-on-one coaching to level up the entire SDKs team.


What you’ll need:

  • 4+ years of professional software development experience
    Proven track record of delivering production-quality applications and libraries in a team setting.


  • Deep expertise in Kotlin Multiplatform
    Hands-on experience configuring shared modules, source sets, and Gradle builds to target Android, iOS, desktop, and web.


  • Debugging and diagnostic chops
    Ability to read native stack traces, interpret logs and memory dumps, and troubleshoot issues across distributed environments.


  • Test automation and CI/CD fluency
    Experience designing and implementing unit, integration, and end-to-end tests, and integrating them into automated build and release pipelines.


  • Excellent communication skills
    Strong written and verbal communication to thrive in an async-first, distributed team—drafting clear design docs, participating in code reviews, and coordinating with customers and stakeholders.


Nice to Haves:

  • Mobile networking and transport knowledge
    Experience with REST, TCP/UDP, QUIC, Bluetooth Low Energy, and other mobile-device communication protocols.


  • Proven FFI integration skills
    Solid background building and maintaining Foreign-Function Interface bridges—ideally between Kotlin/Native and Rust—to ensure safe, high-performance interop.


  • Embedded database familiarity
    Practical use of on-device storage solutions such as SQLite or SQLDelight, especially in synchronization scenarios.


  • Prior Rust development experience
    Hands-on work writing, testing, and maintaining non-trivial Rust codebases (beyond just FFI bindings), with familiarity in Cargo workflows and idiomatic Rust patterns.


  • Experience with build and release automation
    Proven ability to publish Kotlin Multiplatform artifacts (e.g., to Maven Central, CocoaPods, npm) and configure Gradle/Kotlin DSL and CI pipelines for cross-platform distribution.


  • Track record of open-source contributions
    Demonstrated involvement in Kotlin Multiplatform or SDK projects—whether through libraries, plugins, tooling, or community support—that showcases collaborative development and code quality.


The Benefits of Building with Us

We offer competitive salaries and meaningful equity. We believe everyone on the team should have a stake in what we’re building. Benefits vary by region to make sure you're covered in the ways that matter most. In the US, that includes health, dental, vision, life, and disability insurance, plus a 401(k) and flexible spending accounts. In the UK, we offer private healthcare through Vitality, a pension plan, and region-specific coverage. For our team members elsewhere in the world, we work with our global employer platform to offer equitable benefits and coverage. 

Regardless of where you live, everyone at Ditto can utilize flexible time off. And while we work remotely, our Atlanta and San Francisco offices are open if you ever want a place to work or meet up with teammates.

Apply Anyway

At Ditto, we believe success isn’t defined by a flawless resume, a set number of years of experience, or checking every box in a job description. What matters most to us are qualities like grit, resilience, and adaptability. If you're excited about our mission but don't meet every requirement, we encourage you to apply anyway. Use your application to tell us how you’ll make an impact here. We’re always looking for exceptional people ready to grow with us.

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

Create a Job Alert

Interested in building your career at Ditto? Get future opportunities sent straight to your email.

Apply for this job

*

indicates a required field

Resume/CV*

Accepted file types: pdf, doc, docx, txt, rtf


Your address is utilized for the purposes of extending offers and ensuring compliance with local labor laws. 

Select...