Senior Software Engineer, Query Execution

See more jobs from Snowflake Inc.

2 months old

Apply Now

Build the future of data. Join the Snowflake team.

At Snowflake database engineering group, we are building the industry-leading database engine for the Snowflake Data Cloud. At the heart of the database engine is a massively distributed parallel query execution layer optimized for modern hardware with vectorized execution for performance. In addition, the query execution framework is able to handle both analytical and transactional workloads, with the latter optimized for Snowflake Unistore.

We are looking for experienced Senior Software Engineers to join us and contribute to the query execution layer of our database engine and push the performance of it to the next level for both analytical and transactional workloads. We are solving some exciting technical challenges related to modern hardware and hybrid query processing. This is an opportunity to have a direct impact on the future of database computing.

AS A SENIOR SOFTWARE ENGINEER AT SNOWFLAKE YOU WILL:

  • Identify and implement novel query execution, transaction management, or distributed data processing algorithms which allow Snowflake to deliver industry-leading cloud database systems
  • Build the next-generation transaction system, data formats, storage engine and multi-tenant database system
  • Analyze and understand performance and scalability bottlenecks in the system and solve them
  • Pinpoint problems, instrument relevant components as needed, and ultimately implement solutions
  • Design, develop, and support a highly-parallel and fault-tolerant database system comprising many technologies
  • Deal with issues from logical representation of the execution plan to efficient resource management, all the way down to highly specialized vectorized execution
  • Evaluate and determine priorities with a critical understanding of where performance matters most
  • Design and implement critical high-performance systems to handle the ever growing request rate of our database
  • Own the end to end delivery of your projects, from identifying a solution, to design, implementation, testing and safe production rollout
  • Evangelize best practices in database usage and end-to-end architecture

OUR IDEAL SENIOR SOFTWARE ENGINEER WILL HAVE:

  • 5+ years hands-on software engineering experience
  • Significant background in database query processing engine or building core components for large-scale data processing systems (e.g. Oracle, Hekaton, Photon, Dremio, Spark, Presto, StarRocks, Doris etc.)
  • Strong CS fundamentals, including proficiency with data structures, algorithms, and distributed systems (Fluency in C++, C, or Java preferred)
  • Expertise in systems fundamentals including multi-threading, concurrency, IO subsystems, scheduling and modern hardware architectures
  • Strong database fundamentals including SQL, performance, and schema design
  • Strong communication, and collaboration skills
  • Experience with one or more of the following highly desired:
    • Big Data storage technologies and their applications (HDFS, Cassandra, Columnar Databases, etc.)
    • Scalable Distributed Data storage and processing systems such as FoundationDB, RocksDB/LevelDB, CockroachDB, TiDB, PolarDB, OceanBase, Redis, Cassandra, etc.
  • Intense curiosity, willingness to question, and passion for solving hard technical problems and making systems better
  • Experience designing, building, and operating large-scale distributed systems or web services
  • Track record of identifying and implementing creative solutions and delivering highly complex projects in the distributed systems space
  • BS in Computer Science; Masters or PhD Preferred

WHY JOIN THE DATABASE ENGINEERING TEAM A SNOWFLAKE?

Building a new enterprise cloud platform is complex, and our engineering team surmounts the obstacles.  As a member of our team, you will:

  • Build an industry-leading data management system that customers love
  • Solve challenging technical problems related to security, parallel and distributed systems, programming, resource management, large-scale system maintenance, and more!
  • Learn about and contribute to:
    • Super-robust and secure enterprise SaaS platform that services thousands of customers and millions of complex queries daily
    • Highly-scalable and reliable data processing platform that runs on hundreds and thousands of machines
    • User interfaces bridging the enterprise world with the consumer experience.
  • Join a world-class team of both industry veterans and rising stars

Every Snowflake employee is expected to follow the company’s confidentiality and security standards for handling sensitive data. Snowflake employees must abide by the company’s data security plan as an essential part of their duties. It is every employee’s duty to keep customer information secure and confidential.