Sr. Software Applications Engineer

Aug 28, 2024
San Jose, United States
... Not specified
... Senior
Full time
... Office work


WHAT YOU DO AT AMD CHANGES EVERYTHING

We care deeply about transforming lives with AMD technology to enrich our industry, our communities, and the world. Our mission is to build great products that accelerate next-generation computing experiences – the building blocks for the data center, artificial intelligence, PCs, gaming and embedded. Underpinning our mission is the AMD culture. We push the limits of innovation to solve the world’s most important challenges. We strive for execution excellence while being direct, humble, collaborative, and inclusive of diverse perspectives. 

AMD together we advance_




SENIOR SOFTWARE DEVELOPMENT ENGINEER  

 

THE ROLE: 

AMD is looking for an enthusiastic senior software engineer to join the growing Vitis profiling and debug team.  As a member of our team, you will demystify the execution of applications to our customers on a variety of hardware architectures and boards, including NPU, PL, and CPU.  You will develop mechanisms to interpret the collected information and provide high level guidance on the next steps for customers to fully unlock the performance of the AMD hardware.

 

THE PERSON: 

The ideal candidate will have the flexibility to understand and attack problems at many levels from hardware through different layers of software all the way to visualization, and the intuition on which level to best realize the solution.  A successful candidate will also employ strong communication skills to collaborate with several other strong teams of engineers in AMD in order to develop complete features helpful to our customers.

 

KEY RESPONSIBILITIES: 

  • Develop tools and methodologies to help users debug the functionality and performance of high-level applications running on heterogeneous processing elements, including NPUs, AIE, and PL kernels.
  • Develop and maintain run time library code in C++ that provides profiling and debugging services
  • Develop code and processes that configure and control hardware resources such as internal NPU performance counters
  • Develop new solutions to provide higher level abstractions of current debug and profiling services, as well as new solutions for new architectures and applications such as ML
  • Coordinate with other teams in AMD to support Vitis profiling and debug features in all flows and devices, including emulation flows and edge hardware

 

PREFERRED EXPERIENCE: 

  • Expert knowledge and hands-on experience in C, C++ 
  • Solid understanding of object-oriented-design principles 
  • Solid understanding of Software Engineering principles, Data structure, algorithms, Operating Systems concepts and multithread programming 
  • Excellent design and code development skills, familiarity with Linux and modern software tools and techniques for development 
  • Good analytical and problem-solving skills 
  • Familiarity with ML debugging techniques and methods
  • Familiarity with profiling tools and methodologies
  • Familiarity with ACAP and FPGA devices and their tool chains

 

ACADEMIC CREDENTIALS: 

  • Bachelor’s or Master’s degree in Computer/Software Engineering, Computer Science, or related technical discipline 

 

LOCATION: San Jose, CA

 

#LI-MM2




At AMD, your base pay is one part of your total rewards package.  Your base pay will depend on where your skills, qualifications, experience, and location fit into the hiring range for the position. You may be eligible for incentives based upon your role such as either an annual bonus or sales incentive. Many AMD employees have the opportunity to own shares of AMD stock, as well as a discount when purchasing AMD stock if voluntarily participating in AMD’s Employee Stock Purchase Plan. You’ll also be eligible for competitive benefits described in more detail here.

 

AMD does not accept unsolicited resumes from headhunters, recruitment agencies, or fee-based recruitment services. AMD and its subsidiaries are equal opportunity, inclusive employers and will consider all applicants without regard to age, ancestry, color, marital status, medical condition, mental or physical disability, national origin, race, religion, political and/or third-party affiliation, sex, pregnancy, sexual orientation, gender identity, military or veteran status, or any other characteristic protected by law.   We encourage applications from all qualified candidates and will accommodate applicants’ needs under the respective laws throughout all stages of the recruitment and selection process.

At AMD, your base pay is one part of your total rewards package.  Your base pay will depend on where your skills, qualifications, experience, and location fit into the hiring range for the position. You may be eligible for incentives based upon your role such as either an annual bonus or sales incentive. Many AMD employees have the opportunity to own shares of AMD stock, as well as a discount when purchasing AMD stock if voluntarily participating in AMD’s Employee Stock Purchase Plan. You’ll also be eligible for competitive benefits described in more detail here.

 

AMD does not accept unsolicited resumes from headhunters, recruitment agencies, or fee-based recruitment services. AMD and its subsidiaries are equal opportunity, inclusive employers and will consider all applicants without regard to age, ancestry, color, marital status, medical condition, mental or physical disability, national origin, race, religion, political and/or third-party affiliation, sex, pregnancy, sexual orientation, gender identity, military or veteran status, or any other characteristic protected by law.   We encourage applications from all qualified candidates and will accommodate applicants’ needs under the respective laws throughout all stages of the recruitment and selection process.

SENIOR SOFTWARE DEVELOPMENT ENGINEER  

 

THE ROLE: 

AMD is looking for an enthusiastic senior software engineer to join the growing Vitis profiling and debug team.  As a member of our team, you will demystify the execution of applications to our customers on a variety of hardware architectures and boards, including NPU, PL, and CPU.  You will develop mechanisms to interpret the collected information and provide high level guidance on the next steps for customers to fully unlock the performance of the AMD hardware.

 

THE PERSON: 

The ideal candidate will have the flexibility to understand and attack problems at many levels from hardware through different layers of software all the way to visualization, and the intuition on which level to best realize the solution.  A successful candidate will also employ strong communication skills to collaborate with several other strong teams of engineers in AMD in order to develop complete features helpful to our customers.

 

KEY RESPONSIBILITIES: 

  • Develop tools and methodologies to help users debug the functionality and performance of high-level applications running on heterogeneous processing elements, including NPUs, AIE, and PL kernels.
  • Develop and maintain run time library code in C++ that provides profiling and debugging services
  • Develop code and processes that configure and control hardware resources such as internal NPU performance counters
  • Develop new solutions to provide higher level abstractions of current debug and profiling services, as well as new solutions for new architectures and applications such as ML
  • Coordinate with other teams in AMD to support Vitis profiling and debug features in all flows and devices, including emulation flows and edge hardware

 

PREFERRED EXPERIENCE: 

  • Expert knowledge and hands-on experience in C, C++ 
  • Solid understanding of object-oriented-design principles 
  • Solid understanding of Software Engineering principles, Data structure, algorithms, Operating Systems concepts and multithread programming 
  • Excellent design and code development skills, familiarity with Linux and modern software tools and techniques for development 
  • Good analytical and problem-solving skills 
  • Familiarity with ML debugging techniques and methods
  • Familiarity with profiling tools and methodologies
  • Familiarity with ACAP and FPGA devices and their tool chains

 

ACADEMIC CREDENTIALS: 

  • Bachelor’s or Master’s degree in Computer/Software Engineering, Computer Science, or related technical discipline 

 

LOCATION: San Jose, CA

 

#LI-MM2

COMPANY JOBS
1016 available jobs
WEBSITE