Logo
Snowflake

Senior Software Engineer- Database Internals

Snowflake, San Mateo, CA, United States


Build the future of the AI Data Cloud. 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.

We're hiring talented Senior Software Engineers to help build that new database technology. Our team builds the core query optimization, distributed query and data processing engine, and massively scalable metadata storage engine, which are at the heart of the Snowflake Data Cloud. Our innovations in these areas enable our customers to use Snowflake for any database workloads with predictable performance and high efficiency. Our ambitions are huge and this role is a unique opportunity to help us achieve them, by making a significant impact on our elastic, large scale, high-performance computing environment.

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.

AS A SENIOR SOFTWARE ENGINEER AT SNOWFLAKE YOU WILL:

  • Identify and implement novel query optimization, transaction management, or distributed data processing algorithms which allow Snowflake to deliver industry-leading cloud database systems.
  • Build the next-generation transaction system, 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 internals or building core components (query language, query compilation, query execution, storage engines, transaction processing) for large-scale data processing systems (e.g. Hadoop, Spark, Presto, 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 and scheduling.
  • 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 Key-Value stores such as FoundationDB, RocksDB/LevelDB, DynamoDB, Redis, Cassandra, etc.
    • Advanced Analytics systems (e.g. Time-Series, Complex Event Processing, Forecasting, 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 AT 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.

Snowflake is growing fast, and we're scaling our team to help enable and accelerate our growth. We are looking for people who share our values, challenge ordinary thinking, and push the pace of innovation while building a future for themselves and Snowflake.

How do you want to make your impact?

The following represents the expected range of compensation for this role:

  • The estimated base salary range for this role is $195,000 - $306,000.
  • Additionally, this role is eligible to participate in Snowflake's bonus and equity plan.

The successful candidate's starting salary will be determined based on permissible, non-discriminatory factors such as skills, experience, and geographic location. This role is also eligible for a competitive benefits package that includes: medical, dental, vision, life, and disability insurance; 401(k) retirement plan; flexible spending & health savings account; at least 12 paid holidays; paid time off; parental leave; employee assistance program; and other company benefits.

Snowflake is growing fast, and we're scaling our team to help enable and accelerate our growth. We are looking for people who share our values, challenge ordinary thinking, and push the pace of innovation while building a future for themselves and Snowflake.

How do you want to make your impact?

#J-18808-Ljbffr