Senior Software Engineer - ES Performance Tooling

See more jobs from Snowflake Inc.

2 months old

Apply Now

Build the future of data. Join the Snowflake team.

Snowflake is looking for a senior software engineer to help us build world-class performance tools and 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 infrastructure of tests and tools that provide accurate and actionable performance signals. These capabilities 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)
  • Building tools and infrastructure that promote high productivity developer workflows for understanding performance while developing optimizations, and also protecting against accidental regressions in a highly automated manner
  • Interacting with Snowflake product development teams to gather requirements and educate/consult to ensure effective usage of microbenchmarking and diagnostic tools in critical areas
  • Collaborating with partner teams to minimize infrastructure duplication

OUR IDEAL SENIOR SOFTWARE ENGINEER WILL HAVE: 

  • 5+ years of industry experience 
  • 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.