Snowflake started with a clear vision: develop a cloud data platform that is effective, affordable, and accessible to all data users. Snowflake developed an innovative new product with a built-for-the-cloud architecture that combines the power of data warehousing, the flexibility of big data platforms, and the elasticity of the cloud at a fraction of the cost of traditional solutions. We are now a global, world-class organization with offices in more than a dozen countries and serving many more.
We’re hiring talented Software Engineers to join the Snowflake Database team! This position will work directly with our engineering team to evolve our elastic, large scale, high-performance data processing system. We need smart engineers who can pick up and understand complex technical areas quickly – and who are enthusiastic about building new technologies!
AS A SOFTWARE ENGINEER AT SNOWFLAKE, YOU WILL:
- Design, develop, and support a petabyte-scale cloud database that is 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 Java or 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 San Mateo / Bellevue / Berlin office.
BONUS POINTS FOR EXPERIENCE WITH THE FOLLOWING:
- 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, PostrgreSQL internals
- Data warehouse design, database systems, and large-scale data processing solutions like Hadoop and Spark.
- Large scale distributed systems, transactions and consistency models.
- Experience in database replication technology
- Big data storage technologies and their applications, e.g., HDFS, Cassandra, Columnar Databases, etc.
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.