Siemens logo

Software Engineer – C++ / Algorithm Design

Siemens
Full-time
Remote friendly (Waltham, MA)
Worldwide
Level - Mid-Career

Role Summary

Seeking a Software Development Engineer in the Hardware Assisted Verification (HAV) division. The selected candidate will work on custom emulators designed for functional verification of System-on-Chip circuit designs, contributing to the development of compiler software that transforms high-level circuit designs into low-level binaries for emulators.

Experience Level

Mid-Career level experience preferred, particularly in software development with a focus on compiler construction and algorithm analysis.

Responsibilities

The Software Development Engineer will engage in:

  • Development and enhancement of the compiler component responsible for design analysis and resource mapping.
  • Design and implementation of new functionalities within the compiler.
  • Collaboration with software and hardware teams in a global development environment.
  • Focus on algorithm design and lower-level hardware interaction, primarily using C++ in a Linux environment.

Requirements

Essential qualifications include:

  • Bachelor's or Master's degree in Computer Science, Computer Engineering, or Electrical Engineering.
  • Proficiency in C++ programming.
  • Strong foundation in algorithm design and data structures.
  • Basic knowledge of digital logic design at the gate level.
  • Ability to work effectively in both team settings and independently.

Education Requirements

Bachelor's or Master's degree in a relevant field such as Computer Science, Computer Engineering, or Electrical Engineering.