Job Description
We're on a mission to radically transform the data analyst user experience. We empower and delight analysts using a novel cloud architecture built on top of DuckDB, an open source foundation with a vibrant community.
Our team is a diverse mix of passionate, collaborative and empathetic data industry veterans from Google, Amazon, Meta, Snowflake, SingleStore, Databricks, and the like.
We're geographically distributed across 4 engineering hubs, spanning the US and Europe.
At MotherDuck, we're building a modern, cloud-native data analytics platform centered on DuckDB, the beloved in-process SQL database.
A cornerstone of our platform is our file system abstraction that lets DuckDB seamlessly interact with cloud storage backends as if they were local file systems.
We're looking for a Software Engineer with expertise in storage systems to help us refine, optimize, and expand this critical layer.
Core Responsibilities:
Design, implement, and optimize our FUSE file system abstraction to enable seamless integration between DuckDB and cloud storage backends.
Develop and maintain distributed read caching, background processes (compaction, GC, etc...)
Enhance observability and diagnostics for storage-related systems to ensure reliability and troubleshoot issues effectively.
Collaborate with internal engineering teams and cross-functional partners to deliver a coherent, scalable storage system.
Work on state management and dynamic resource allocation for our storage infrastructure.
Ensure the system is reliable, secure, and efficient, while maintaining agility for rapid iteration.
Participate in on-call rotations and contribute to improving system reliability to make those on-call shifts quieter (and maybe even fun).
Requirements:
Bachelor's degree in Computer Science or equivalent work experience.
3+ years of software development experience, with a focus on storage systems, file systems, or distributed storage architectures.
Strong experience with C++ or another low level systems programming language.
Familiarity with FUSE or other file system abstractions.
Deep understanding of cloud storage backends (e.g., S3, GCS, Azure Blob Storage) and the challenges of integrating them with file systems.
Experience with distributed systems, storage formats, or data processing engines.
Knowledge of SQL databases like PostgreSQL and DuckDB is a plus.
Comfortable working in a cloud-native environment (AWS, GCP, Azure) with deployment automation and scaling experience.
Excellent problem-solving and communication skills.
Self-directed and team-oriented with a collaborative mindset.
Sense of fun, willingness to embrace duck puns, and ability to not take yourself too seriously.
What we provide:
Competitive compensation and stock options
100% paid medical, dental, and vision for employees
80% paid medical, dental, and vision for dependents
Unlimited Paid Time Off
401k plan
Opportunities to build team connections via company summits 2x a year and team summits 1-2x a year.
Hybrid work environment
Please Apply
See less description
Related info
💡 Quick Summary
Seeking a career-building opportunity? The Software Engineer position is now open for candidates interested in the Software Developer Jobs sector. This role in Seattle offers a professional environment and growth potential.
Requirement Snapshot: Candidates should possess basic communication skills, a proactive attitude, and the ability to work in a team. Experience in Software Developer Jobs is a plus.
