Summary / Role Purpose
This engineer will join the Research and Development team that creates state of the art software for semiconductor analysis. Innovation in semiconductor design and manufacturing enables smaller device architectures with higher performance and energy efficiency for powering the smart product revolution. The physics associated with shrinking geometries, especially in the emerging 3-D IC, FinFET and stacked-die architectures, bring out design challenges related to power and reliability, affecting design closure. ANSYS simulation and modeling tools offer the sign-off accuracy and performance needed to ensure proper timing and power noise integrity and reliability of even the most complex ICs, taking into account electromigration, thermal effects and electrostatic discharge phenomena.
Key Duties and Responsibilities
- Build a solid understanding of the code and the team’s software development processes.
- Diagnose and fix code problems.
- Deliver code that meets requirements on schedule. Ensure that code is efficient, scalable, maintainable, extensible, robust and easy to understand.
- Optimize code to improve tool run time and memory capacity.
- Create unit, regression and/or system-level tests to thoroughly validate new features or changes.
- Communicate clearly and work closely with manager, technical leads and other engineers to refine solutions and to describe changes that may affect others.
- Learn and follow best practices in software engineering.
- Evaluate multiple approaches to large technical problems considering limitations and challenges.
- Develop novel algorithms and software implementations.
- Expand depth and breadth of knowledge in specific electronic design and analysis areas.
Minimum Education/Certification Requirements and Experience
- BS degree in Electronics Engineering, Computer Science or related field, with 2 years experience
- Two years experience in C++ with broad and deep understanding of the language
- Working knowledge of the Linux operating system
- Strong background in data structures, algorithms, and debugging
- Ability to learn quickly, understand complex systems and to work closely with others
- Ability to complete high-quality work on time
Preferred Qualifications and Skills
Prefer PhD or MS degree in Electriconics Engineering, Computer Science or related field
Demonstrated skills in the following areas are a plus:
- Successful large-scale commercial software development
- Development, debugging and optimization of systems using distributed processing
- Experience with the Python programming language
- Parasitic extraction for advanced semiconductor nodes
- Transistor-level simulation or analysis
- Gate level timing analysis and/or optimization
- Gate level or RTL power analysis and/or optimization
- IC physical design
- Logic synthesis or equivalence checking
- GUI development for physical design or analysis tools