Principal Software Engineer (R&D, strong C/C++; Remote)

Cadence Design Systems Remote
c++ software engineer remote team design tools optimization analysis algorithms software systemverilog profiling
November 20, 2022
Cadence Design Systems
Salt Lake City, Utah

Cadence has a 30-year history of applying leading edge optimization and analysis algorithms to extremely complex problems in semiconductor and electronic design, verification, and analysis.

We are looking for talented software engineers to join our verification team. You'll have a great opportunity to make a difference by applying your creativity and problem-solving skills to solve large scale compile problems such logic optimization, partitioning and performance.

More specifically, you will be part of the Xcelium compiler performance team whose responsibilities are to implement compiler language features and speed up the compile time of systemVerilog models.

One of the team major project is to rearchitect the compiler to reduce the memory and time required to build digital models with a focus towards highly replicated designs.

The candidate will work in a team of senior architects on an organization wide mission critical project. The responsibilities will include profiling, analyzing performance and coming up with more performant solutions. The team is looking for a dynamic innovative candidate in search of a challenging strategic project. The team has a strong presence in Boston Massachusetts but we are welcoming prospective candidates from other locations of similar time zones (any state in the US, Canada or other countries). Cadence offers a flexible work environment and working remotely from home for the right candidate will be considered.

Job responsibilities:

  • Develops software solutions that are memory and time efficient
  • Study and Improve existing algorithms of the compiler
  • Investigate xcelium performance problem areas
  • Analyze performance data collected by compiling customer designs and develop optimizations that speed up or reduce memory of the compilation process
  • Documents solutions with functional and design specifications
  • Thoroughly test developed code

Desired skills and competencies:

  • Highly motivated individual willing to continuously learn and work in a fast pace environment
  • Excellent C++ design and programming skills
  • Strong understanding of data structures, algorithms and databases.
  • Ability to characterize a problem and specify solution
  • Strong ability to reverse engineer code
  • Understanding of compilers, parsing and code generation, static elaboration, event driven or parallel simulation
  • Skilled at refactoring techniques, optimization strategies, unit test framework design/construction/usage, profiling tools, static analysis tools, code coverage or memory checker tools (valgrind, purify )
  • Excellent verbal and written communication skills
  • Knowledge of Verilog or SystemVerilog Hardware Description Languages is a plus
  • Trouble shooting software issues remotely on large customer designs
  • Familiarity with Agile development processes is a plus
  • Familiarity with Linux/UNIX tools
  • Familiarity with configuration management systems such as git or perforce

Report this job

Similar principal engineer jobs in salt lake city ut