Senior Software Engineer, Storage

closed
DC SCORES Logo

DC SCORES

πŸ“Remote - United States

Summary

Join Ditto's remote team as a Senior Software Engineer and contribute to building the next-generation of mesh network technology. You will design new features, support data storage systems across various environments, and collaborate with product and engineering teams.

Requirements

  • Fluency in Rust including proficiency with: Asynchronous programming, including cancel safety, Concurrency primitives, Multithreading
  • Strong type system knowledge and applicability of this knowledge to idiomatic Rust design patterns (e.g. typestate, builder, etc.)
  • Experience using low-level platform tooling OS APIs File system OS-level concurrency Blocking & non-blocking IO, including modern scalable I/O event notification mechanisms (e.g. epoll, kqueue etc.)
  • Experience using a wide variety of database features
  • Strong data structure & algorithms knowledge
  • Unit and integration testing, with bonus points for lightweight formal methods such as property testing

Responsibilities

  • Break ground on greenfield projects, and design new features
  • Support the data storage systems across a wide variety of environments, from mobile devices to small servers to web clients
  • Collaborate closely with product and neighboring engineering teams to build end-to-end customer-facing features
  • Design and build storage interfaces and features that support nearly all Ditto features, including: Key-Value stores, Blob storage, File system access, Indexing, Performance tuning
  • Build & maintain native storage implementations across a variety of platforms including Windows, iOS, macOS, linux, and web using operating system specific functionality where appropriate

Preferred Qualifications

  • Experience with SQLite, LMDB, OPFS, IndexedDB
  • Deep knowledge or experience implementing database internals such as indexes, storage engines, etc
  • Experience implementing blob storage including topics such as cloud object storage, content addressing & deduplication, file systems, etc
  • Working knowledge of CRDTs
  • Experience with distributed systems
  • Experience working in C or C++ codebases

Benefits

  • Competitive salaries
  • Stock options
  • Medical, dental, vision, life, and disability coverage
  • Flexible spending account (FSA)
  • Flexible vacation policy
  • 401(k) plan
This job is filled or no longer available