About this role
At Cadence, we hire and develop leaders and innovators who want to make an impact on the world of technology. Job Duties:
• Research, design, and develop computer and network software or specialized utility programs for multinational computational software company. • Analyze user needs and develop software solutions, applying principles and techniques of computer science, engineering, and mathematical analysis. • Implement special routing algorithm in C++ programming language. • Design efficient data structures to support routing logic. • Optimize algorithm performance for large-scale circuit layouts. • Test and validate the implemented software on various customer designs. • Run test cases on real-world customer design files to ensure correctness. • Debug and fix issues found during validation on different design scenarios. • Decide the technical specifications in meetings. • Collaborate with cross-functional teams to define algorithm requirements. • Document and review technical decisions made during design discussions. • Make regression tests to maintain the code quality. • Create automated test scripts to ensure new features do not break existing functionality. • Analyze test results and update test coverage as needed. • Make documents for the development. • Write technical documentation for algorithm design and usage. • Maintain change history for implemented features. • Develop new algorithms on routing software development, regularly submit papers in international conferences and journals, and patents in the US. • Attend various conferences for VLSI circuit design and EDA routing software development for state-of-the-art technologies and mentor other team members accordingly. • Some telecommuting permitted. • Must be available to work on projects at various, unanticipated sites throughout the United States.
Qualifications:
• Doctorate degree in Computer Engineering, Computer Science, or related field. • Minimum four (4) years of experience in the job offered or in a related occupation. • Utilize C++ programming to develop EDA software products • Utilize scripting languages such as Python to implement raw data processing/clustering, toolkit for development, and machine learning • Algorithms, particularly EDA-related algorithms including bidirectional A* Algorithm, Sorting, Linked List Management, DFS/BFS, Graph Algorithm, Dynamic Programming and Tree Data Structure • Multithreaded and parallel programming • Electronic circuits and Very-Large-Scale Integration (VLSI) • IC design flow and EDA tools, including synthesis, place-and-route, or timing analysis • Computer architecture and operating system • Compiler and formal language • Must be available to work on projects at various, unanticipated sites throughout the United States. The annual salary range for California is $219,960 to $253,500. You may also be eligible to receive incentive compensation: bonus, equity, and benefits. Sales positions generally offer a competitive On Target Earnings (OTE) incentive compensation structure. Please note that the base salary range is a guideline, and individual total compensation may vary based on factors such as qualifications, skill level, competencies and work location. Our benefits programs include: paid vacation and paid holidays, 401(k) plan with employer match, employee stock purchase plan, a variety of medical, dental and vision plan options, and more. We’re doing work that matters. Help us solve what others can’t.