Work with a team of algorithmic specialists to research, design and develop complex algorithms
Interface with internal customers for requirements analysis and schedule
Perform software tests on code and enhancements
Compile data for regularly scheduled or special reports, analysis, and statements.
Shared ownership of significantly sized software
Key requirements
MSc in Computer Science with more than 10 years of relevant experience
Has deep knowledge of combinatorial optimization algorithms, including but not limited to graph algorithms, dynamic programming, back-tracking and the corresponding data-structures
Proven abilities to analyze algorithmic complexity (both memory and runtime)
Is known to use of heuristics to solve NP-complete problems
Experience with developing software for the EDA or Semiconductor business
Experience in larger software engineering projects, working in a team