FlexHired LogoFlexHired
Logo of Ditto

Ditto

Staff Software Engineer, Query

Job Summary

This role involves working with the Query Engine team to develop and optimize a SQL-like query language for a distributed system. The responsibilities include designing data distribution and index collection subsystems, implementing query optimizers, troubleshooting issues, and collaborating on system architecture. Candidates should have extensive experience in software engineering, particularly with distributed systems, and command of low-level programming languages such as Rust or C/C++. The position emphasizes strong communication and teamwork in a fully remote environment, with opportunities for travel and professional growth.

Required Skills

SQL
Troubleshooting
Distributed Systems
Rust
C/C++
Architecture Design
Indexing
Query Optimization
Data Collection
Low-Level Programming

Benefits

Health Insurance
Remote Work
Global Benefits
Dental Insurance
Vision Insurance
Life Insurance
Disability Insurance
Retirement Plan
Flexible Spending Accounts
Flexible Time Off
Private Healthcare
Pension Plan
Region-specific Coverage

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 The Query Engine team builds the primary surface for our customers to interact with their data and the Ditto system: the Ditto Query Language (DQL). We use DQL extensively throughout both the cloud database and on-device SDKs, and query engineers work closely with many other teams to integrate with their systems. As a specialist team this group is laser-focused on enabling customers to get the most out of Ditto while providing a familiar, SQL-like experience.

As an optimization specialist, you will:

  • Work with product managers and other engineers to help design the future of the technology.
  • Troubleshoot production issues, and design future remediations to deliver on Ditto's goal of a high performance, self-healing, and reliable mesh.
  • Design and implement data distribution collection subsystems and index statistics collection subsystems.
  • Design and implement a query cost based optimizer based on collected data distribution, and as a fall back, a rule based query optimizer, to be used when suitable distributions and statistics do not exist or are insufficient.
  • Assist with implementation of other query engine features as needed.
  • Author RFCs, design and document system architecture, and collaborate with other teams within Ditto.
  • Estimate the delivery timeline for projects and communicate with management and the broader team regarding project execution.
  • Set team culture by example, expanding Ditto’s culture of Trust, Communication, and Continual Improvement.

What you’ll need:

  • 7+ years of experience in software engineering, 2 or more in a Senior or Staff role, with a focus on distributed systems and low-level programming languages like Rust and/or modern C/C++.
  • Willingness to learn the Rust programming language.
  • Prior experience with building SQL like query languages.
  • Prior experience with building cost based and ruled based query optimizers.
  • Prior experience with collecting index statistics and data distributions.
  • A willingness to travel (including internationally) once a quarter for team get-togethers and design sessions.
  • Strong communication skills, with an emphasis on written communication skills in particular. As a fully distributed team, async communication is the default and the development process often includes written architecture and design documents.

Nice to haves:

  • Bachelor’s degree or higher in Computer Science or Engineering.
  • Prior professional experience with the Rust programming language or other systems programming languages (C, C++, D, Ada, Zig, etc).
  • Experience with property-based testing or other state-space exploration techniques.
  • Familiarity with Conflict-Free Replicated Data Types (CRDTs).
  • Experience with monitoring tools such as Prometheus or Grafana.

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 31st, 2025
Job TypeFull Time
LocationEMEA Remote; US West
SalaryCompetitive rates
Exciting remote opportunity (requires residency in Africa, Europe, United States) for a Staff Software Engineer, Query 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.

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.