R&D Engineer II
ANSYS
Summary / Role Purpose
The R&D Engineer II contributes to the development of software products and supporting systems. In this role, the R&D Engineer II will collaborate with a team of expert professionals to understand customer requirements and accomplish development objectives.
Immediate work will focus on developments and enhancements of FEA features involving simulation solver remeshing, definition of geometry and topology changes and mesh constraints introduced during solution, data interchange between solver and mesh engine under parallel and cloud processing environments. The goal is to improve simulation automation including intelligent processing, computing speed, accuracy, and robustness in complex software component systems. Experience in mechanical, civil, engineering mechanics, aerospace engineering or applied mathematics with strong scientific programming and computational geometry background is required.
Ansys is the world leader in engineering simulation. Up to 80% of the cost of a product’s development is determined by the decisions you make early in the design process, and Ansys helps its customers reduce this cost with physical simulation tools to make better decisions quicker. Customers use Ansys simulation products to digitally explore design concepts and test critical design choices early in the product life cycle.
Key Duties and Responsibilities
- Performs complex development activities that may require extensive analysis in areas including user experience and software design.
- Perform R&D in simulation solver-remeshing workflow, mesh size and quality control , advance remeshing schemes for solid mechanics nonlinear solution , fracture and damage analysis in large assemblies.
- Employs best practices and helps to maintain them through technical reviews and mentoring.
- Performs complex bug verification, release testing and beta support for assigned products. Research problems discovered by QA or product support and develop solutions.
- Researches and understands the marketing requirements for the finite element and computational mechanics product. May work with strategic customers or proxies to assess needs and develop solutions.
- Works independently with minimal supervision and may take on some planning and mentoring responsibilities.
Minimum Education/Certification Requirements and Experience
- BS in Engineering, Computer Science, or related field with 5 years’ experience, or MS with 3 years’ experience, or PhD with 1 year experience.
- Technical knowledge and experience with C/C++ and scripting languages.
- Experience with computation geometry and programming.
- Experience with parallel programming models (e.g., OpenMP, MPI)
- Strong understanding of data structures and data handling algorithms.
- Strong analytical and problem-solving skills.
- Driven and willing to learn.
- Effective verbal and written communication skills.
- Strong interpersonal skills.
- Ability to learn quickly and to collaborate with others in a geographically distributed team.
Preferred Qualifications and Skills
- Technical knowledge and experience with object-oriented design, scripting languages, data structures and algorithms, computational geometry, meshing, GPU and parallel processing programming.
- Ph.D. Degree with strong backgrounds in finite element simulation, CAD/mesh modeling, and high-performance computing,
- Proficiency in C/C++, Python, Fortran. Experience in CUDA programming
- Experience with modern cloud and distributed computing technologies like micro-service architectures and APIs (gRPC).
- Passion for crafting robust and efficient code.
- Experience in a team-based software development environment, and with version control such as GIT.
- Experience delivering high-quality products in a large-scale commercial software development environment.
- Ability to work independently and manage one's time