×
Register Here to Apply for Jobs or Post Jobs. X

Senior Software Engineer, Database

Job in Pocatello, Bannock County, Idaho, 83201, USA
Listing for: Ditto
Full Time position
Listed on 2026-06-05
Job specializations:
  • Software Development
    Software Engineer
Salary/Wage Range or Industry Benchmark: 125000 - 150000 USD Yearly USD 125000.00 150000.00 YEAR
Job Description & How to Apply Below

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 and Store team owns the storage and transaction layer at the heart of Ditto’s edge database. This role works with the Ditto Query Language (DQL) and the raw storage engines that underpin our embedded database. You’ll be responsible for backend abstraction, transaction management, concurrency control, CRDT-aware document storage, and blob storage — all designed to run reliably on constrained edge devices like phones, IoT hardware, and ruggedized military systems.

This is a uniquely challenging domain: unlike a traditional cloud database, every design decision must account for memory, unreliable storage media, and the need to natively handle Conflict-Free Replicated Data Types (CRDTs) as part of the transaction layer. The storage layer is the foundation that the query engine, sync system, and SDKs all build upon.

As a Senior Software Engineer — Embedded Database, you will:

  • Design and maintain the storage backend abstraction layer and transaction management system that underpins Ditto’s embedded database.

  • Implement and optimize storage backends (e.g. SQLite, in-memory, Rocks

    DB and other engines), including connection pooling, write serialization, and concurrency control for resource-constrained devices.

  • Ensure CRDT document operations — merging, tombstone management, version tracking — are correct and performant at the storage layer.

  • Own the reliability and performance of the storage layer, identifying and resolving performance bottlenecks.

  • Design and maintain blob storage systems for large value handling across platforms.

  • Work with product managers and other engineers to help design the future of the technology.

  • Collaborate closely with our Query Engine team and the Data Sync team to optimize our embedded database for edge sync operations

  • 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:

  • 5+ years of experience in software engineering, 2 or more in a Senior role or above, with a focus on database internals, storage engines, or low-level systems programming.

  • Strong proficiency in Rust or excellent C/C++ skills with a willingness to learn Rust.

  • Experience with embedded database systems (SQLite, Rocks

    DB, Level

    DB, LMDB, or similar) or storage engine internals.

  • Understanding of transaction isolation, concurrency control, and ACID guarantees.

  • Experience with indexing strategies (B-tree, LSM tree, etc.) and general familiarity with query engine concepts.

  • 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.

  • Familiarity with Conflict-Free Replicated Data Types (CRDTs) or other distributed/replicated data structures.

  • Experience writing custom SQLite VFS or extensions.

  • Experience with Rocks

    DB, LMDB, or similar key-value storage…

Position Requirements
10+ Years work experience
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
 
 
 
Search for further Jobs Here:
(Try combinations for better Results! Or enter less keywords for broader Results)
Location
Increase/decrease your Search Radius (miles)
0
200
Filters
Education Level
Experience Level (years)
Posted in last:
Salary