Software Engineer II
Ampere ComputingShanghaiUpdate time: May 27,2019
Job Description

Ampere is designing the future of hyperscale cloud and edge computing with its 64-bit Arm server processor architecture. Born in and built for the cloud with a modern architecture, Ampere gives customers the freedom to accelerate the delivery of the most memory-intensive applications such as artificial intelligence, big data, machine learning and databases in the cloud. The Ampere eMAG family of products delivers the highest memory throughput and lowest TCO tailored for the emerging growth of cloud computing and next-generation data centers.

Our Story

Like the scientist behind its name, Ampere employees are innovators. We understand the needs of cloud computing and different software requirements. We are inventing what comes next and looking at everything from the structure of memory and how efficient the system is, to considerations on speed, cost of electricity and ability to cool. Power, size, weight and cost are driving the technology requirements and the innovation to come.

Our world class team of engineers, with depth and expertise in the cloud and semiconductor industries, is not only focused on the development of new semiconductor designs but also building out the first software ecosystem for Arm®-based server processors. Through the Ampere approach to the cloud and edge, we give our customers the freedom to challenge the status quo and accelerate next-generation data centers for the most memory-intensive applications. Given the challenge we have outlined, we are building a culture of entrepreneurs that ensure customers come first, proactively approaching industry challenges in the areas of security, power and performance, delivering results that matter most.

Job Description

We're seeking a Senior Software Engineer to optimize open source compilers and associated libraries for Ampere platforms. The role will involve contributing bug fixes and performance enhancements upstream to GNU or LLVM. It also includes analyzing workloads to discover new performance improvement opportunities through compiler optimizations.

Responsibilities

  • Optimize open source GNU and LLVM compilers and libraries for Ampere ARM64 bit Server platforms
  • Understand open source compiler internals
  • Optimize compiler for benchmarks on ARM64 bit platforms
  • Optimize and tune open source libraries
  • Gather different profiling data and identify areas for improvements through compilers.
  • Provide input and create microbenchmarks for the Ampere HW architecture team to help design future HW
  • Work with high profile customers to optimize the compilers for their workloads

Minimum Qualifications

  • Bachelors degree in Computer Engineering, Electrical Engineering, Computer Science (or related field)
  • Minimum 2+ years of experience in software development, with 2+ in compilers and programming languages.
  • Good knowledge of either GCC or LLVM compiler internals
  • Good knowledge of math libraries
  • Ability to read Aarch64 assembly language.
  • Very efficient in C and C++. Fortran and Java experience – a plus.
  • Good knowledge of Computer Architecture, CPU, Memory, Caches
  • Good understanding of Linux performance profiling tools and performance analysis techniques.
  • Local candidates Shanghai China only.
  • Ability to speak/write in English (Professional/Informal) required.

Get email alerts for the latest"Software Engineer II jobs in Shanghai"