Portfolio Company Job Board

Find a job at one of our innovative portfolio companies
Sands Capital
Sands Capital
77
companies
3,310
Jobs

Senior Software Engineer - ES Performance Tooling

Snowflake

Snowflake

Software Engineering
Bellevue, WA, USA
Posted on Thursday, July 11, 2024

Build the future of data. Join the Snowflake team.

Snowflake is looking for a senior software engineer to help us build world-class performance Microbenchmarking infrastructure. As an engineer in the ES (Engineering Systems) Performance Tooling team at Snowflake, you will play a central role in ensuring performance-critical Snowflake modules remain highly performant, and supported by a robust microbenchmark framework. These microbenchmarks will both shield our products from performance regressions and also be instrumental in performance optimization workstreams. Your customers will be Snowflake software developers who share a passion for performance and a mission to become the premier Data Cloud.

RESPONSIBILITIES WILL INCLUDE:

  • Establishing and maintaining appropriate low variance environments for microbenchmarking, and keeping the environments aligned and up to date with the architectures and micro-architectures that Snowflake code will execute on in production (Intel, ARM, etc)
  • Establishing tooling that promotes high productivity developer workflows for understanding performance while developing optimizations, and also protecting against accidental regressions in a highly automated manner
  • Collaborating with partner teams to minimize infrastructure duplication
  • Interacting with Snowflake product development teams to gather requirements and educate/consult to ensure effective usage of Microbenchmarking in critical areas

OUR IDEAL SENIOR SOFTWARE ENGINEER WILL HAVE:

  • Excellent analytical and problem-solving skills, with a history of troubleshooting complex performance issues
  • Proficiency in C++ and/or Python, and experience with other languages
  • Solid understanding of low-level programming concepts including memory management, concurrency, and multithreading
  • Strong communication and teamwork skills, with experience working in agile environments
  • Demonstrated ability to provide constructive feedback and mentoring for junior engineers
  • Test automation and tooling/infrastructure experience
  • Performance profiling experience (sampling and instrumentation)
  • Familiarity with modern Intel and ARM hardware

BONUS POINTS FOR EXPERIENCE WITH ONE OR MORE OF THE FOLLOWING:

  • Experience working with compilers, linkers, and other toolchain components
  • Familiarity with benchmarking frameworks such as Google Benchmark, JMH, or others
  • Knowledge of hardware performance counters and how to effectively utilize them for performance analysis
  • Experience with cloud environments like AWS, Azure, or GCP
  • Experience setting up CI/CD pipelines

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 an confidential.