Tech Jobs for Talents without Borders
English-1st. Relocation-friendly. Curated daily by Imagine.
4,806 Jobs at 192 Companies

Senior Software Engineer, Presto Optimizer



Software Engineering
San Jose, CA, USA
Posted on Wednesday, October 25, 2023
A career in IBM Software means you’ll be part of a team that transforms our customers challenges into solutions.

We are seeking a skilled back-end developer to join our IBM Software team. As part of our team, you will be responsible for developing and maintaining high-quality software products, working with a variety of technologies and programming languages

Your Role and Responsibilities

We are seeking a skilled Software Engineer to join our team and work on the development and enhancement of the Presto Query Optimizer. As a Software Engineer specializing in query optimization, you will be instrumental in improving the core functionality of our Presto-based lakehouse platform. This role offers the opportunity to work on complex problems related to query planning and optimization within a high-performance, distributed query engine.

Key responsibilities:

  • Collaborate closely with the engineering team to design, develop, and maintain the Presto query optimizer.
  • Implement and enhance query optimization techniques, cost-based query planning, and rule-based optimizations within the Presto optimizer.
  • Analyze query execution plans, identify bottlenecks, and propose solutions to improve query performance.
  • Contribute to the development of features related to query optimization and provide solutions to complex SQL queries.
  • Participate in code reviews, testing, and debugging to ensure the reliability and efficiency of the query optimizer.
  • Keep abreast of the latest trends and advancements in query optimization, distributed systems, and database technologies.
  • Collaborate on documentation, knowledge sharing, and mentoring team members on query optimization best practices.

Required Technical and Professional Expertise

  • Strong programming skills in Java, C++, or other relevant languages for query optimization.
  • In-depth knowledge of query optimization techniques, query planning, and the internals of database systems.
  • Strong problem-solving skills and a passion for optimizing complex systems.

Preferred Technical and Professional Expertise

  • Proficiency with Presto or similar distributed query engines is a strong plus.
  • Previous experience in query optimization, database query processing, and query rewriting is highly advantageous.
  • Familiarity with performance analysis and profiling tools for query optimization.
  • Excellent communication and teamwork skills.