Senior Software Engineer - Database Engineering

Snowflake Snowflake · Data AI · WA-Bellevue, United States · Engineering

Senior Software Engineer for Snowflake's Database Engineering team, focusing on evolving the core product, a petabyte-scale cloud data processing system. Responsibilities include designing and implementing query optimization, distributed data processing algorithms, and new service architectures. The role requires strong systems programming, distributed systems concepts, and experience with Java or C++.

What you'd actually do

  1. Design and implement novel query optimization or distributed data processing algorithms to maintain Snowflake's industry-leading data warehousing capabilities.
  2. Design, develop, and support a petabyte-scale cloud database system, ensuring it is highly parallel and fault-tolerant.
  3. Develop and implement the new service architecture required to enable the next generation of the Snowflake Data Cloud.
  4. Analyze, understand, and resolve complex performance and scalability bottlenecks within the system.
  5. Own the end-to-end delivery of your projects, including identifying solutions, design, implementation, rigorous testing, and safe production rollout.

Skills

Required

  • 5+ years of industry experience working on commercial or open-source software.
  • Strong fluency in Java or C++.
  • Excellent problem-solving skills and a deep understanding of Computer Science fundamentals, including data structures, algorithms, and distributed systems.
  • Strong systems programming skills, including experience with multi-threading and concurrency.
  • A solid foundation in distributed systems concepts (e.g., consistency, scaling, failure recovery).
  • Experience with implementation testing, debugging, and documentation , specifically within a Linux development environment.
  • Bachelor’s degree or foreign equivalent in Computer Science, Software Engineering, or a related field.

Nice to have

  • SQL or other database technologies including internal design and implementation.
  • Query optimization, query execution, compiler design and implementation.
  • Experience with internals of distributed key value stores like FoundationDB and storage engines like RocksDB, InnoDB, BerkeleyDB etc.
  • Experience with MySQL, PostgreSQL internals
  • Data warehouse design, database systems, and large-scale data processing solutions like Hadoop and Spark.
  • Experience in database replication technology
  • Big data storage technologies and their applications, e.g., HDFS, Cassandra, Columnar Databases, etc.