RESPONSIBILITIES
- Logical thinking and problem-solving ability.
- 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.
- Expand depth and breadth of knowledge in specific electronic design and analysis areas.
MINIMUM QUALIFICATIONS
- BS degree in Electrical Engineering, Computer Science or related field, with three years experience or MS in Electrical Engineering, Computer Science or related field
- Two years experience in C or C++ with broad and deep understanding of the language
- Working knowledge of the Linux operating system
- Strong background in data structures, algorithms, and debugging
- Solid understanding of electronic design at gate level and/or transistor level
- Ability to learn quickly, understand complex systems and to work closely with others
- Ability to complete high-quality work on time
PREFERRED QUALIFICATIONS
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
- Logic synthesis or equivalence checking
- GUI development for physical design or analysis tools
- Familiarity with deep learning algorithms development with a big data approach to complex chip design is a plus