Senior Staff Software Engineer - Query Execution
Dremio
Santa Clara, CA, United States
24 days ago
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Apply on arc.dev
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Working hours
Regular working hours
Job source
Tech stack
Query Performance
Java (Programming Language)
Adobe InDesign
Artificial Intelligence
Apache HTTP Server
Big Data
C++ (Programming Language)
Code Generation
Profiling
Code Review
Computer Programming
Databases
+23 more
Data Structures
Software Debugging
Distributed Systems
Memory Management
Electronic Data Interchange (EDI)
Apache Hadoop
Java Virtual Machine (JVM)
Open Source Technology
Operational Databases
Performance Tuning
Software Engineering
Database Engines
Parquet
Multithreading
Cloud Platform System
Concurrency
Apache Spark
Caching
Parallel Computation
Data Lakes
Avro
Data Management
Asynchronous Programming
Job description
Dremio’s Query Execution team builds the runtime responsible for executing analytical queries at scale. The team sits between query planning and table scans, owning the systems that turn query plans into efficient, reliable execution.
As a Senior Staff Software Engineer, you’ll work on query operators, expression evaluation, memory management, execution scheduling, runtime planning, and performance optimization. Your work will directly affect query performance, scalability, and reliability across Dremio’s cloud data platform.
What You’ll Be Doing
- Build the execution engine: Design, implement, test, and support query operators, expression evaluation, execution scheduling, runtime planning, and resource management.
- Improve runtime performance: Optimize vectorized processing, concurrency, parallelism, memory usage, data exchange, and disk spilling.
- Diagnose difficult problems: Investigate query correctness and performance issues using query profiles, profiling tools, telemetry, benchmarks, logs, and production data.
- Optimize Java and the JVM: Improve CPU utilization, allocation behavior, garbage collection, thread behavior, and other runtime characteristics.
- Collaborate across the query engine: Work with Query Planner, Datalake, Product, Support, and field engineering teams on end-to-end query improvements.
- Use AI-assisted development tools: Apply AI tools to code comprehension, debugging, test generation, documentation, and incident analysis.
- Apply engineering judgment: Validate AI-generated code and recommendations through review, testing, benchmarking, and engineering judgment.
- Raise the engineering bar: Participate in design and code reviews, contribute to technical direction, and mentor other engineers., * Query engines: Distributed query engines, database engines, or large-scale data processing systems.
- Execution techniques: Vectorized execution, query operators, expression evaluation, code generation, or runtime optimization.
- Runtime systems: JVM profiling, memory management, caching, networking, data exchange, execution scheduling, or disk spilling.
- Data platforms: Apache Arrow, Apache Iceberg, Parquet, Avro, Spark, Hadoop, or cloud object stores.
- Open source: Contributing to open-source projects., Dremio is not responsible for any fees related to unsolicited resumes and will not pay fees to any third-party agency or company that does not have a signed agreement with the Company.
Requirements
- Software engineering experience: 5+ years developing production software, preferably in database systems, query execution, distributed systems, or related areas.
- Programming skills: Strong Java skills; experience with C++ is a plus.
- Computer science fundamentals: Strong foundation in data structures, algorithms, concurrency, multithreaded programming, and asynchronous programming.
- Database and distributed systems knowledge: Understanding of database internals, query processing, distributed execution, and performance optimization.
- Performance engineering experience: Experience profiling and optimizing CPU, memory, garbage collection, thread behavior, or other runtime characteristics.
- Problem-solving ability: Ability to solve ambiguous technical problems and work effectively across team boundaries.
- Engineering judgment: Ability to evaluate tradeoffs, validate solutions rigorously, and make sound decisions when working with unfamiliar or AI-assisted implementations.
- Communication and ownership: Strong communication skills, a sense of ownership, and a commitment to delivering high-quality software.
About the company
About Dremio
51-200
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Apply on arc.dev
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this role…