Lead Software Engineer
Cadence Design Systems, Inc.
Austin, United States of America
yesterday
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
SeniorJob location
Austin, United States of America
Tech stack
Artificial Intelligence
Very-Large-Scale Integration
Data analysis
C++
Code Review
Computer Programming
Computer Networks
Computer Engineering
Data Structures
Linux
Electronic Design Automation
Graph Theory
Integrated Development Environments
Python
Machine Learning
Routing
Software Architecture
Shell Script
Software Engineering
Tcl (Programming Language)
Utility Software
Multithreading
Information Technology
Physical Design
Job description
- 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.
- Utilize graduate-level analysis and skills to develop essential data structures and algorithms for electronic design automation (EDA) software.
- Develop next-generation VLSI routing engine for advanced technology nodes.
- Maintain and enhance the existing routing technology as part of the Innovus Implementation System.
- Develop technologies and products that enable the manufacturing of the most advanced integrated circuits built for communication, Internet of Things (IoT), and AI markets.
- Perform fundamental research on VLSI physical design theories.
- Perform code review for other team members.
- Write documents to explain software architecture and implementation.
Requirements
- PhD in Computer Engineering, Computer Science, or related field
- Programming in C++ for implementing efficient algorithms and data structures in EDA
- Multithreading programming to optimize algorithm performance
- Data structures and algorithms, including complexity analysis and implementation techniques for efficient memory and Input/Output (I/O) utilization
- Knowledge of graph theory and combinatorial optimization for VLSI routing algorithms
- Knowledge of VLSI physical design theories and methodologies including placement and routing
- Linux environment and shell scripting to test and develop tools under Cadence development environment
- Programming in TCL for EDA tool scripting and design data analysis
- Programming using Python language for data analysis and machine learning algorithm implementation
We're doing work that matters. Help us solve what others can't.
About the company
At Cadence, we hire and develop leaders and innovators who want to make an impact on the world of technology.