Staff Software Engineer-SDKs

DC SCORES Logo

DC SCORES

📍Remote - Worldwide

Summary

Join Ditto's SDKs team as a Kotlin Multiplatform Engineer and play a pivotal role in simplifying real-time data synchronization for developers across multiple platforms. Leverage Kotlin's shared code capabilities to build high-performance SDK modules for Android, iOS, web, IoT, and desktop. Collaborate with product managers, designers, and backend engineers to translate user needs into intuitive APIs and robust libraries. Own the full development lifecycle, from architecting modules to streamlining CI/CD pipelines. Partner with customers and support teams to resolve integration issues and optimize performance. Join a small, globally distributed team that values trust, clear communication, and continuous improvement.

Requirements

  • 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

Responsibilities

  • 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

Preferred Qualifications

  • 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

Benefits

  • Competitive salaries
  • Stock options
  • Medical, dental, vision, life, and disability coverage
  • Flexible spending account (FSA)
  • Flexible vacation policy
  • 401(k) plan

Share this job:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.