Software Engineer - Database
Job description
About the role
You will own the design and implementation of core server and client extension logic that keeps MotherDuck tightly aligned with DuckDB. You will drive critical projects in dual execution, resource assignment, and system reliability from initial design through production rollout. You will collaborate daily with the DuckDB community and DuckDB Labs to ensure APIs and behaviors remain consistent and performant. You will deepen your expertise in embedded database internals and share that knowledge through mentorship and clear documentation. You will debug complex issues with our support team to understand real-world usage patterns and prioritize impactful improvements. You will identify architectural risks early and remove bottlenecks before they affect users or stability. You will mentor teammates and help elevate engineering practices across the database team. This role gives you high agency to own impactful projects that shape how modern analytics workloads run both locally and in the cloud.
Key facts
What you'll do
- Own major projects in our dual execution stack, ensuring queries run seamlessly whether they execute locally or in the cloud.
- Build and maintain the cloud control plane that dynamically assigns resources so DuckDB performs efficiently from tiny workloads to the largest memory-intensive instances.
- Lead cross-functional collaboration with frontend, platform, and infrastructure teams to deliver a coherent end-to-end user experience.
- Push the state of the art in embedded database performance, distributed execution, and deep DuckDB internals.
- Mentor engineers across the company and contribute to documentation that helps the wider community use MotherDuck effectively.
- Work directly with our support team to triage real-world issues, learn from usage patterns, and drive prioritized improvements.
- Improve systems holistically by spotting architectural challenges early and clearing bottlenecks before they escalate.
- Mentor teammates and help raise the bar for engineering practices, testing, and code quality across the database team.
- Work closely with DuckDB Labs to align on APIs, design decisions, and the future direction of the DuckDB project.
- Engage with the open-source community by contributing upstream, filing issues, and sharing insights that benefit MotherDuck and DuckDB users.
- Evaluate and prototype new execution models, storage formats, and resource management strategies to keep MotherDuck performant and scalable.
- Collaborate with product and data teams to turn analytics requirements into robust, low-latency database capabilities.
Requirements
- You have built and shipped complex backend systems and can articulate what great execution looks like in production.
- You are fluent in a backend systems language such as C++, Rust, Java, or similar, and are comfortable working close to the metal.
- You have a strong foundation in query engines, execution plans, indexing strategies, and performance optimization techniques.
- You have hands-on experience with DuckDB, regardless of your prior level with the project.
- You have worked with cloud infrastructure, networking, and building low-latency distributed systems that handle concurrent workloads.
- You can scope and lead projects that span multiple collaborators and cross-functional dependencies without constant supervision.
- You take pride in clear thinking, careful system design, and making thoughtful tradeoffs between performance, complexity, and maintainability.
- You are comfortable mentoring peers and fostering a collaborative, high-agency environment where knowledge sharing is expected.
- You enjoy engaging with the wider community, including open-source discussions and direct collaboration with the DuckDB Labs team.
- You are comfortable working in Amsterdam or remotely within Europe while aligning with team working hours.
- You communicate effectively in English, both in writing and during technical discussions with cross-functional partners.
- You are passionate about building reliable data infrastructure that empowers developers to build analytics experiences quickly.
Nice to have
- Experience contributing to or extending the DuckDB codebase or other open-source analytical databases.
- Familiarity with vectorized execution engines and columnar data formats used in high-performance databases.
- Background in building or operating cloud-native data platforms or control planes.
- Experience with automated testing, benchmarking, and performance regression detection for database systems.
- Knowledge of distributed consensus or scheduling concepts that apply to query execution.
- Exposure to frontend or SQL layer development, even if at an intermediate level.
Practical notes
This role is based in Amsterdam, with the option for remote work within Europe. The position is full-time, and we expect alignment with team working hours for effective collaboration. We host company-wide events once a year and smaller team gatherings several times a year to strengthen our flock. Most team members work from the office a few days a week; the office is located on the Ij river with a great lunch view.