Senior Software Engineer - FDB Performance

See more jobs from Snowflake Inc.

6 months old

Apply Now

Build the future of data. Join the Snowflake team.

A massive new market opportunity is being created at the intersection of Cloud and Data, and the Snowflake Data Cloud is leading the way, all powered by the database engine we are building from the ground up. 

Key to Snowflake’s Database Engine is our large scale distributed transactional Key-Value store - called FDB - which powers all of Snowflake’s products and services and is rapidly evolving to meet Snowflake’s future needs.

Our teams breed ambition, challenge ordinary thinking, push the pace of innovation, in-service of the exploding demand for accessible data. Snowflake is growing fast and we’re scaling our team to help enable and accelerate our growth. We’re passionate about our people, our customers, our values and our culture! We’re also looking for people with a growth mindset and the pragmatic insight to solve for today while building for the future. And as a Snowflake employee, you will be accountable for supporting and enabling diversity and belonging.

We are looking for an outstanding performance engineer to join the team and improve FDB performance, scalability, and reliability along with Snowflake’s constantly growing needs for a faster and larger database.

AS A PERFORMANCE ENGINEER ON THIS TEAM, YOU WILL:

  • Analyze FDB performance and scalability, identify bottlenecks, and recommend and develop improvements in FDB.
  • Analyze production workloads, and develop synthetic workloads, chaos workloads and benchmarks.
  • Develop tools to profile performance at runtime e.g. perf, eBPF, kernel tracing, flame graphs.
  • Explore new execution hardware and new cluster configurations that improve the overall resource efficiency of the system. 
  • Evangelize best practices in database usage and end-to-end architecture. 
  • Participate in the design and implementation of next generation systems.

AN IDEAL CANDIDATE WILL HAVE:

  • 8+ years hands-on software engineering experience.
  • BS/MS/PhD in computer science (or equivalent)
  • Expertise in identifying and analyzing performance bottlenecks
  • Solid understanding of OS and systems concepts like process management, concurrency, memory management, IO patterns, file systems, block storage devices, etc.
  • Work experience in cloud environments like AWS, Azure, GCP
  • Ability to work effectively both autonomously and in teams
  • Strong technical problem solving, communication, and collaboration skills
  • Excitement by the challenge of hard technical problems
  • Intense curiosity and willingness to question

BONUS POINTS:

  • Familiarity with C++
  • Good working knowledge of Linux / Unix OSes
  • Have worked on performance analysis for databases
  • Knowledge of NoSQL, SQL databases and database storage engines
  • Understanding of relational database concepts and SQL
  • Experience with continuous integration and automation frameworks e.g. Jenkins, Kubernetes etc.

About Snowflake:

Snowflake SIGMOD 2016 paper

About FoundationDB, the database Snowflake FDB is based on: 

FDB SIGMOD 21 Paper

FoundationDB Summit 2018 and FoundationDB Summit 2019

How FDB powers Snowflake Metadata Forward!

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.