
Lead Software Engineer
Cadence Design Systems2 months ago
Shanghai, ChinaSenior
Responsibilities
- Derive, implement, and verify finite-element formulations in production C++.
- Write unit and regression tests using analytical solutions and benchmark problems.
- Profile and optimize solver and meshing code for runtime and memory performance on large models.
- Debug numerical issues involving convergence, mesh quality, conditioning, and accuracy on customer cases.
- Document formulations, assumptions, and validation results clearly and reproducibly.
- Collaborate with application engineers, QA, and product management to deliver features and respond to customer feedback.
Requirements
- PhD in Mechanical, Civil, or Aerospace Engineering, Computational Mechanics, Applied Mathematics, or a related field, or an MS in a related field with at least two years of relevant industry or research experience.
- Strong grounding in continuum mechanics and the finite element method, including weak forms, isoparametric elements, numerical integration, assembly, and Newton–Raphson methods for nonlinear problems.
- Working knowledge of heat transfer or thermomechanical stress analysis, including thermal eigenstrain, CTE mismatch, and layered structures.
- Strong C++11 or later experience extending large existing codebases, including pointers, memory ownership, templates, and debugging.
- Familiarity with sparse linear algebra and at least one sparse solver or library.
- Ability to validate implementations using analytical solutions, refined meshes, or patch tests.
- Preferred experience developing commercial or open-source FEA software such as Abaqus, ANSYS, LS-DYNA, COMSOL, Code_Aster, FEniCS, deal.II, or MOOSE.
- Preferred experience with nonlinear FEA, parallel programming, sparse solvers, graph partitioning, mesh generation, computational geometry, semiconductor packaging or PCB systems, Windows and Linux development, and Git or Perforce.
- Clear written and spoken English and willingness to collaborate through technical review and knowledge sharing.
About Cadence Design Systems
Cadence Design Systems builds electronic design automation (EDA) software, emulation/acceleration hardware, and reusable IP that help semiconductor and systems companies design, verify, and implement chips and electronic systems. It also develops computational engineering tools, including computational fluid dynamics and molecular modeling for drug discovery. Founded in 1988 and headquartered in San Jose, California, Cadence is a public company listed on NASDAQ under the ticker CDNS.