Work In Tech

Find your next role at Canada's fastest-growing tech companies

R&D Engineer II

ANSYS

ANSYS

Other Engineering
Chengdu, Sichuan, China
Posted on Feb 7, 2025

Summary / Role Purpose

The R&D Engineer contributes to the development of software products and supporting systems. In this role, the R&D Engineer will collaborate with a team of expert professionals to accomplish development objectives.

This engineer will join the Redhawk-SC Research and Development team that creates state of the art software for semiconductor analysis. RedHawk-SC is the proven industry leader for power noise and reliability signoff for SoC designs. RedHawk-SC enables creation of high-performance SoCs that are still power efficient and reliable against thermal, electromigration (EM) and electrostatic discharge (ESD) issues for markets such as mobile, communications, high-performance computing, automotive and internet of things (IoT).

RedHawk-SC is a next-generation solution built on Ansys SeaScape, the world's first custom-designed, big data architecture for electronic system design and simulation. SeaScape provides per-core scalability, flexible design data access, instantaneous design bring-up, MapReduce-enabled analytics and many other revolutionary capabilities. The R&D Engineer will have a unique opportunity to redesign or port key mathematical algorithms to GPU to significantly boost RedHawk-SC performance.

Key Duties and Responsibilities

  • Designing and implementing numerical algorithms on advanced hardware capabilities on Intel x86, ARM64 and general-purpose GPUs, leveraging both hardware vectorization and multi-threading.
  • Performs basic development activities, including the design, implementation, maintenance, testing and documentation of software modules and sub-systems.
  • Learns and employs best practices.
  • Performs basic bug verification, release testing and beta support for assigned products.
  • Research problems discovered by QA or product support and develop solutions.
  • Works under the close supervision of a development manager.

Minimum Education/Certification Requirements and Experience

  • BS in Engineering, Computer Science, or related field
  • Experience with C or C++ with broad and deep understanding of the language

Preferred Qualifications and Skills

  • Technical knowledge and experience with object-oriented design, data structures, algorithms, linear algebra and high-performance computing
  • Basic understanding of the software development process
  • Good communication and interpersonal skills
  • Experience in hardware accelerated algorithms implementations (using CUDA etc.)
  • Ability to learn quickly and to collaborate with others in a geographically distributed team.
  • Experience in optimizing large scale software for memory and run time.
  • Experience in solving large scale linear system of equations using numerical methods.
  • Development, debugging and optimization of systems using distributed processing.
  • Experience with the Python programming language
  • Power delivery network simulation for advanced semiconductor nodes
  • Time-domain based large scale circuit simulation techniques.