Initiate. Innovate. Dedicate. Your next is now at Cray.
Browse Open Jobs Search Open Jobs Edit Your Profile View Submitted Applications

Job details

Requisition Number 19-0196
Title Software Engineer - Scientific and Math Libraries
Location US-MN-Bloomington
Position Type Full-Time
Scientific Libraries Developer

Who We Are
Our business is supercomputing. We’ve been developing, building and supporting highly advanced computing solutions for the world’s most complex science, engineering and analytics challenges since 1976. We pride ourselves on understanding the problems our customers are trying to solve and developing the technologies that enable them to make the discoveries that better our world. 
We are proud to be an Equal Opportunity Employer including women, minorities, protected veterans, and individuals with disabilities.  CRAY Inc. is an Affirmative Action, Equal Opportunity Employer.  
Who You Are
You are a dynamic, driven professional with a passion for success – yours, your company’s and your customer’s. 

Who We Need?

The Cray Scientific and Math Libraries group has an opening for a motivated and skilled low-level software engineer to design and develop state of the art numerical libraries for Cray's current and future supercomputers. The group develops high-performance linear algebra and Fourier transform libraries for Cray systems.

The engineer will be responsible for developing and optimizing low-level math kernels for numerical libraries for Cray supercomputers. This role is part of a dynamic team tasked to create innovative software solutions for the world's most powerful supercomputers.

Required Skills:

•	Demonstrated ability in assembly-level CPU programming is required.
•	Understanding of computer architecture for software optimization purposes.
•	Significant programming experience in C, C++, or Fortran.
•	Experience developing numerical algorithms and math kernels.

Desired Experience:

•	Graduate degree in computer science, computer engineering, applied math, or related field or alternatively a bachelor's degree in similar fields with relevant experience.

Preferred Skills:

•	Prior work with x86-64 or ARM assembly languages.
•	Experience developing software for GPU accelerators.
•	Background in parallel processing or scientific computing.
•	Some exposure to BLAS, LAPACK, or FFT packages.
•	Training in linear algebra and numerical methods.

As part of our standard hiring process for new employees, employment with CRAY will be contingent upon successful completion of a comprehensive background check
Apply On-line