Software Performance Engineer

AMD AMD · Semiconductors · Austin, TX · Engineering

Software Performance Engineer at AMD focused on improving the performance of key applications and benchmarks on AMD platforms. This role involves identifying and analyzing performance bottlenecks, designing solutions, and contributing to open-source projects. Requires deep knowledge of C/C++, CPU profilers, and CPU architecture.

What you'd actually do

  1. Identify and analyze AMD strengths and weaknesses in application performance, finding performance bottlenecks
  2. Use all available tools and/or source code to determine the nature of the identified bottleneck
  3. Design solutions or workarounds to mitigate identified bottlenecks
  4. Work with AMD’s architecture specialists to improve future products
  5. Apply a data minded approach to target optimization efforts

Skills

Required

  • Deep Knowledge of C/C++ programming
  • Experience using CPU profilers such as vTune, WPA, MSVS Performance Profiler
  • Knowledge of CPU architecture
  • BS/MS in computer science, computer engineering or a related field

Nice to have

  • Experience identifying performance bottlenecks on any platform
  • Knowledge of SIMD instructions such as SSE, AVX, NEON
  • Knowledge of modern concurrent programming and threading APIs
  • Familiarity with modern source version control such as Git, Mercurial
  • Excellent communication skills and able to work with partners effectively
  • Self-starter, passionate about performance
  • Experience developing highly parallel applications and algorithms
  • Experience with power/performance tuning
  • Knowledge of modern compiler toolchains and optimizations
  • Knowledge of x86/x64 assembly language and special instructions
  • Knowledge of interpreted languages such as Python and JavaScript
  • Familiarity with both Windows and Linux environments

What the JD emphasized

  • performance of key applications and benchmarks
  • performance bottlenecks
  • performance