About the role
In this role, you will work on some of Dremio’s core features, including Reflections—a key feature of Dremio’s query engine that combines the power of materialized views with sophisticated automatic query rewrites through deep integration in Dremio’s distributed query optimizer. You will grow as a leader through mentoring, collaborating with other developers and taking ownership of complex issues to deliver high quality distributed systems at a massive scale.
What you'll be doing
* Own design, implementation, testing, and support of next-generation features related to Dremio’s Query Planner and Reflections technologies
* Work with open source projects like Apache Calcite and Apache Iceberg
* Use modular design patterns to deliver an architecture that’s elegant, simple, extensible and maintainable
* Solve complex technical problems and customer issues while improving our telemetry and instrumentation to proactively detect issues before they arise and make debugging more efficient
* Design and deliver architectures that run optimally on public clouds like GCP, AWS, and Azure
* Mentor other team members for high quality and design
* Collaborate with Product Management to innovate and deliver on customer requirements and with Support and field teams to ensure customer success
What we're looking for
* B.S./M.S/Equivalent in Computer Science or a related technical field or equivalent experience
* 5+ years of experience developing production-level software
* Fluency in Java/C++
* Strong foundation in data structures, algorithms, multi-threaded and asynchronous programming models, and their use in developing distributed and scalable systems
* Strong database fundamentals including SQL, performance, and schema design is a big plus
* Experience in developing complex and scalable distributed systems and delivering, deploying, and managing microservices successfully
* Passion for learning, quality, zero downtime upgrades, availability, resiliency, uptime of the platform, and using latest technologies
* Ability to solve ambiguous, unexplored, and cross-team problems effectively
* Understanding of distributed file systems such as S3, ADLS, or HDFS
* Experience with AWS, Azure, and Google Cloud Platform and background in large scale data processing systems (e.g., Hadoop, Spark, etc.) is a plus
* Ability to scope and plan solutions for big problems and mentors others on the same
* Interested and motivated to be part of a fast-moving startup with a fun and accomplished team
Bonus points if you have
* Experience with materialized views and incremental view maintenance.
* Experience with distributed query engines.
* Hands on experience in query processing or optimization, distributed systems, concurrency control, data replication, code generation, networking, storage systems, heap management, Apache Arrow, SQL Operators, caching techniques, and disk spilling
* Hands on experience with multi-threaded and asynchronous programming models
#J-18808-Ljbffr