Software Developer II
The Software Developer II is responsible for the development the ANSYS CFD solver’s parallel capabilities and other high performance computing infrastructure areas. The Software Developer II will help to define technical directions and develop products, working closely with other team members and ANSYS teams to ensure the capabilities meet ANSYS strategic needs and our customer requirements.
The position involves developing and maintaining functionality related to the ANSYS CFD solver’s parallel capabilities and other high performance computing infrastructure areas. Responsibilities include:
• Parallel implementation of CFD algorithms and physical models
• Parallel implementation of mesh-related algorithms and partitioning methods
• Development and maintenance of message-passing libraries
• Development and maintenance of dynamic load balancing utilities
• Development of algorithms suitable for distributed computing on GPU
• Development and maintenance of parallel I/O
• Development of automatic error detection and recovery utilities
In addition, the incumbent will optimize the CFD application to achieve high performance for clusters running the Linux and Windows operating systems. Implementations will be optimized to support both shared and distributed memory platforms. It is expected that the incumbent will work with hardware vendor partners in tuning the application, as well as porting the application to new hardware including processors and interconnects, and software such as cluster tools and run-time-systems. Part of this work will involve benchmarking and code profiling to assess the performance of the CFD application on high performance hardware.
The incumbent should maintain a level of technical excellence in the area of parallel processing for CFD through the evaluation of current literature, participation in technical conferences, publications, and interaction with colleagues in the field. The incumbent may also be called upon to provide high-level support to the product support and development staffs, in the area of parallel CFD.
JOB MINIMUM REQUIREMENTS AND QUALIFICATIONS
• Bachelor’s degree with minimum of 5 years experience, or a Master’s degree in engineering, computational science, or applied mathematics.
• Excellent and demonstrated programming skills in in at least one computer language (preferably C/C++).
• An advanced degree (MS/MTech/PhD) in engineering or computational science is a plus
• At least 2 years experience implementing algorithms on high-performance parallel distributed memory platforms.
• Knowledge of message passing libraries including MPI
• Experience with multi-threaded programming, e.g., OpenMP
• Experience with distributed computing on GPUs
• Knowledge of C/C++ programming language
• Experience with Linux or Windows clusters
• Experience with Lattice-Boltzmann solver development
ABOUT ANSYS, INC.
If you’ve ever seen a rocket launch, flown on an airplane, driven a car, used a computer, touched a mobile device, crossed a bridge, or put on wearable technology, chances are you’ve used a product where ANSYS software played a critical role in its creation. ANSYS is the global leader in engineering simulation. We help the world’s most innovative companies deliver radically better products to their customers. By offering the best and broadest portfolio of engineering simulation software, we help them solve the most complex design challenges and engineer products limited only by imagination. Join our nearly 3000 professionals in more than 75 strategic locations around the world in making a difference in the world of engineering simulation and product development. Visit www.ansys.com for more information.
Non-Negotiable Hiring Criteria:
ANSYS INSPIRE Values:
Strive for Excellence
Passion & Intensity
Respect & Trust
ANSYS, Inc. is an Equal Opportunity Employer
No Phone Calls