FlexHired LogoFlexHired
Logo of Ditto

Ditto

Staff Software Engineer, SDKs (Flutter)

Job Summary

Ditto is seeking a Staff Software Engineer specializing in Flutter SDK development to lead the end-to-end delivery of their Flutter package. The role involves designing idiomatic Dart APIs, architecting cross-platform plugins, and integrating native code using Dart FFI. Candidates should have at least three years of experience in building reliable production software, fluency in Dart, and experience with testing, code reviews, and performance profiling. The position emphasizes cross-functional collaboration, documentation, and contributing to the quality and performance of the SDK across multiple platforms.

Required Skills

CI/CD
Testing
Documentation
Collaboration
Debugging
API Design
Code Review
Dart
Flutter
Cross-platform Development
Performance Profiling
Native Code Integration
Dart FFI

Benefits

Stock Options
Medical Insurance
Dental Insurance
Vision Insurance
Life Insurance
Competitive Salary
Flexible Vacation
Remote Work Options
Disability Coverage
Flexible Spending Account (FSA)
401(k) plan with employer match
Office Workspace Access

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.

As a Staff Software Engineer (Flutter SDK) on the SDK team, you will set the technical vision and drive the end‑to‑end delivery of Ditto’s Flutter package—empowering developers to synchronize data in real‑time across Android, iOS, desktop, and web. You’ll design idiomatic, null‑safe Dart APIs, architect cross‑platform plugin modules, and build reliable bridges between Dart and Ditto’s native core using Dart FFI and platform channels.

From day one, you will own architecture decisions, performance profiling, and release automation while mentoring engineers and shaping best practices across the mobile organization. Working closely with product, design, and backend teams, you will translate developer‑experience goals into intuitive APIs and high‑performance code. You’ll collaborate with customers and support engineers to diagnose integration issues, optimize for battery, memory, and start‑up time, and iterate rapidly on feedback.

Operating in our async‑first, globally distributed culture, you will craft clear design docs, conduct thorough code reviews, champion rigorous testing and observability, and foster a culture of collaboration and continuous improvement.

As a Flutter Staff Software Engineer on the SDKs Team, you will:

  • Implement and enhance Flutter SDK features

    Deliver scoped ticket work: add new API methods, improve existing functionality, and fix defects under the direction of senior engineers.

  • Write reliable tests

    Author unit and integration tests to validate Flutter logic and interoperability, ensuring code quality and preventing regressions.

  • Own quality from test to release – Build unit/integration tests, profile performance, automate releases, and uphold robust observability.

  • Participate in code reviews

    Contribute thoughtful feedback on pull requests, learn from review comments, and uphold team coding standards.

  • Collaborate cross-functionally

    Work with product, QA, and support teams to clarify requirements, reproduce customer issues, and verify fixes.

  • Produce and maintain documentation

    Write clear README updates, code examples, and API reference snippets that help internal and external developers onboard quickly.

  • Communicate progress and blockers

    Proactively share status updates in standups and async channels; escalate challenges early to keep projects on track.

What you’ll need:

  • 3+ years building production software with a track record of shipping reliable code in a team setting
  • Fluency in Dart and comfort designing idiomatic, null‑safe APIs
  • Hands‑on Dart FFI experience building bridges to native code
  • Strong testing discipline (unit, integration, CI pipelines)
  • Familiarity with CI/CD tools such as GitHub Actions or CircleCI
  • Clear, concise communication—especially in async, written form

Nice to Haves:

  • Experience building or maintaining SDKs, libraries, or developer tools in Rust or other languages.
  • Familiarity with one or more of our consumer languages (Kotlin, JavaScript/TypeScript, Swift).
  • Background in peer-to-peer or real-time synchronization systems.
  • Prior work with performance profiling or memory-constrained environments.

Benefits We Offer

  • Competitive salaries and stock options
  • Medical, dental, vision, life, and disability coverage
  • Flexible spending account (FSA)
  • Generous, flexible vacation policy
  • 401(k) plan with employer match

Come join our remote team and help shape the future of real-time data sync across every edge device!

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

Interested in this job?

Application deadline: Open until filled

Logo of Ditto

Ditto

Mobile ad-hoc mesh networking and peer-to-peer data sync for your enterprise applications.

See more jobs
Date PostedJuly 28th, 2025
Job TypeFull Time
LocationUK Remote; US Remote
SalaryCompetitive rates
Exciting remote opportunity (requires residency in United Kingdom, United States) for a Staff Software Engineer, SDKs (Flutter) at Ditto. Offering competitive salary (full time). Explore more remote jobs on FlexHired!

Safe Remote Job Search Tips

Verify Employer Thoroughly

Research the company's identity thoroughly before applying. Check for a professional website with contacts, active social media, and LinkedIn profiles. Verify details across platforms and look for reviews on Glassdoor or Trustpilot to confirm legitimacy.

Never Pay to Get a Job

Legitimate employers never require payment for applications, training, background checks, or equipment. Always reject upfront payment requests or demands for bank details, even if they claim it's for purchasing necessary work gear on your behalf.

Safeguard Your Personal Information

Protect sensitive data like SSN, bank details, or ID copies. Share this only after accepting a formal, written job offer. Ensure it's submitted via a secure company system or portal, never through insecure channels like standard email attachments.

Scrutinize Communication & Interviews

Watch for communication red flags: poor grammar, generic emails (@gmail), vague details, or undue pressure. Be highly suspicious of interviews held only via text or chat apps; legitimate companies typically use video or phone calls.

Beware of Unrealistic Offers

If an offer's salary or benefits seem unrealistically high for the work involved, be cautious. Research standard pay for similar roles. Offers that appear 'too good to be true' are often scams designed to lure you into providing information or payment.

Insist on a Formal Contract

Always secure and review a formal, written job offer or employment contract before starting work or sharing final personal details. Ensure it clearly defines your role, compensation, key terms, and conditions to avoid misunderstandings or scams.

Related Jobs

Full Time
UK Remote; US Remote
Full Time
UK Remote; US Remote

Subscribe Newsletter

Never miss a remote job opportunity. Subscribe to our newsletter today and receive exclusive job alerts, career advice, and industry insights delivered straight to your inbox.