Software Engineer
Snowflake
Job Overview
Who's the hiring manager?
Sign up to PitchMeAI to discover the hiring manager's details for this job. We will also write them an intro email for you.

Job Description
About Snowflake
Snowflake is about empowering enterprises to achieve their full potential — and people too. With a culture that’s all in on impact, innovation, and collaboration, Snowflake is the sweet spot for building big, moving fast, and taking technology — and careers — to the next level.
We’re hiring talented Software Engineers to join the Snowflake Query Processing team! This position is part of our engineering team to evolve our elastic, large scale, high-performance query processing engine. We need smart engineers who can pick up and understand complex technical areas quickly – and who are enthusiastic about building new technologies! The official language for this office will be English.
As a Software Engineer at Snowflake, you will:
- Design, develop, and support a petabyte-scale cloud database that is high performant, highly parallel, and fault-tolerant.
- Build high-quality and highly reliable software to meet the needs of some of the largest companies on the planet.
- 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 and implement novel query optimization or distributed data processing algorithms which allow Snowflake to provide industry leading data warehousing capabilities.
- Design and implement the new service architecture required to enable the Snowflake Data Cloud.
- Develop tools for improving our customers' insights into their workloads.
Our Ideal Software Engineer will have:
- 2+ years industry experience working on commercial or open-source software.
- Fluency in C++.
- Familiarity with development in a Linux environment.
- Excellent problem solving skills, and strong CS fundamentals including data structures, algorithms, and distributed systems.
- Systems programming skills including multi-threading, concurrency, etc.
- Experience with implementation testing, debugging and documentation.
- Bachelor’s degree or foreign equivalent in Computer Science, Software Engineering or related field; Masters or PhD preferred.
- Ability to work on-site in our Berlin office.
Bonus Points for experience with the following:
- SQL or other database technologies including internal design and implementation of database engines.
- Query optimization, query execution, compiler design and implementation.
- Large scale distributed systems, transactions and consistency models.
- Data warehouse design, database systems, and large-scale data processing solutions like Hadoop and Spark.
- Big data storage technologies and their applications, e.g., HDFS, Cassandra, Columnar Databases, etc.
Key skills/competency
- C++
- Distributed Systems
- Query Processing
- Database Design
- SQL
- Linux
- Algorithms
- Data Structures
- Concurrency
- Cloud Database
How to Get Hired at Snowflake
- Research Snowflake's culture: Study their mission, values, recent news, and employee testimonials on LinkedIn and Glassdoor.
- Tailor your resume: Customize your resume to highlight C++, distributed systems, and query processing experience relevant to Snowflake's needs.
- Showcase problem-solving: Prepare to discuss complex technical challenges and your systematic approach to solutions for the Software Engineer role.
- Master CS fundamentals: Brush up on data structures, algorithms, and systems programming for Snowflake's technical interviews.
- Understand Snowflake's product: Familiarize yourself with the Snowflake Data Cloud and its core capabilities for cloud data warehousing.
Frequently Asked Questions
Find answers to common questions about this job opportunity
Explore similar opportunities that match your background