Senior Software Engineer, Rust
Job Description
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 position:
Ditto's SDK runs on thousands of devices across iOS, Android, desktop, and embedded platforms — from restaurant POS terminals to military radios. The Rust core is the engine, consumed via FFI across all of them. Once it ships, we have limited visibility into how it behaves in our customers' environments. When something goes wrong, we need to understand what happened — often on devices we can't access, on networks we don't control, running workloads we didn't anticipate.
You'll own the observability story for Ditto's SDK. That means designing and building the telemetry pipeline that runs inside the Rust core: what we instrument, how we collect and buffer it locally, how we get it off the device, and how we make it useful — both for our engineering team diagnosing issues and for our customers understanding how Ditto is performing in their applications.
This isn't configuring Datadog dashboards. You'll be designing systems that run on constrained hardware with intermittent connectivity, where every byte of overhead matters and the observability system must never degrade the SDK's core functionality. You'll think about bounded buffers on devices with 2GB of RAM, support bundles that help our support engineers resolve issues in hours instead of days, and remote telemetry that gives us fleet-level visibility across hundreds of customer deployments.
As a Senior Rust Engineer, you will own:
SDK Observability Pipeline — Design, build, and maintain the client-side telemetry system in the Rust core. Metrics, structured logging, and tracing that work across all platforms the SDK targets, with configurable verbosity, sampling, and export.
Support Bundles — Evolve our current log bundle system into comprehensive support bundles that capture device state, recent telemetry, configuration, and diagnostic metadata — giving our support engineers (and customers) the context they need to resolve issues quickly.
Logging System Performance — Reduce the I/O and compute overhead of our current logging infrastructure. The SDK's observability should be near-invisible to the host application's performance.
Rust SDK Ownership — Own feature development and customer support for our Rust SDK, including direct engagement with customers debugging production integration issues.
What you’ll need:
Systems-level Rust experience (3+ years) — You've built production-grade Rust libraries or systems. You're comfortable with unsafe, FFI boundaries, async runtimes, and reasoning about memory layouts and performance at the microsecond level.
Observability and telemetry design experience — You've designed or significantly contributed to instrumentation, logging, metrics, or tracing systems. You understand the tradeoffs between signal granularity and overhead, and you've thought about what makes telemetry useful, not just voluminous. Experience with OpenTelemetry is a strong plus.
Library/SDK development mindset — You've built software that other developers consume as a dependency. You think about API design, backward compatibility, developer experience, and the principle that your library is a guest in someone else's application.
Cross-platform and FFI fluency — The Rust core ships via FFI to Swift, Kotlin, C#, JavaScript, and more. You need to be comfortable working across language boundaries and understanding how your Rust code behaves when called from a different runtime.
Strong written communication — We're an async-first, distributed team. Your design docs, RFCs, and code reviews are your primary communication tools. You can explain complex systems decisions clearly to both engineers and non-technical stakeholders.
Customer empathy — You're willing to engage directly with customers, debug production issues on their devices, and translate field experience into engineering improvements.
Nice to haves:
Android/Kotlin or mobile platform experience
Experience with embedded databases, data sync, or offline-first architectures
Background in developer tooling or developer experience teams
Networking fundamentals: TCP/UDP, Bluetooth Low Energy, mesh networking
Open-source contributions in relevant ecosystems (Rust observability, FFI tooling, cross-platform SDKs)
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.
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 know game-changers don’t always come wrapped in a “perfect” resume. Years of experience? Every single bullet point checked? Meh. That’s not what drives us.
What does matter?
Grit.
Curiosity.
Adaptability.
And a genuine spark for what we’re building.
So if you’re fired up about our mission but not sure you tick every box - hit that apply button anyway. Use your application to show us how you’ll make an impact here.
We’re always on the lookout for exceptional humans who want to grow, stretch, and build something meaningful 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.