What are the responsibilities and job description for the Senior/Principal Software Engineer (C++/DS/Algorithm) position at Siemens EDA (Siemens Digital Industries Software)?
We are seeking a Senior/Principal Software Engineer to join our dynamic Questa Sim (Simulation) R&D team at Siemens EDA in Santa Clara, USA. In this pivotal role, you will be instrumental in conceptualizing, architecting, and implementing advanced algorithms and software designs that drive the next generation of our simulation technology.
In this role, you will:
- Develop Cutting-Edge Algorithms: Design and architect innovative algorithms and software solutions for our industry-leading simulation tools.
- Contribute to Core Development: Play a key role in the development and enhancement of production-quality components, algorithms, and engines, while also supporting and improving existing codebases.
- Solve Complex Problems: Collaborate with a senior group of engineers to solve intricate software problems in a fast-paced and dynamic environment.
- Apply Technical Expertise: Leverage your deep technical expertise, exceptional problem-solving skills, and analytical thinking to achieve project milestones and deliver high-quality software solutions.
- Drive Innovation: Stay self-motivated, disciplined, and focused on achieving personal and team goals, consistently seeking opportunities for innovation and improvement.
- Customer collaboration: Work with Mil-Aero customers to innovate/implement fit-to-purpose technical flows
What you'll bring:
- Extensive Experience: 5-12 years of professional experience in software development, with a strong focus on complex engineering applications.
- Architectural Vision: Proven experience with conceptualizing, defining, architecting, and implementing solutions for open-ended problem scopes or new ideas.
- C/C Mastery: Strong proficiency in C/C , coupled with an in-depth understanding of data structures and algorithms.
- Compiler Expertise: Expertise in Compiler Concepts and Optimizations.
- Platform Proficiency: Experience working on UNIX and/or LINUX platforms.
- Analytical Prowess: Excellent problem-solving and analytical skills, with a keen eye for detail.
- Independent Drive: Proven ability to work independently, take ownership of tasks, and consistently deliver high-quality results.
Bonus Points for:
- Basic knowledge of Digital Electronics and concepts related to SystemVerilog, Verilog, and VHDL.
- Familiarity with parallel algorithms and job distribution techniques.
- Exposure to Simulation or Formal-based Verification methodologies.
Education:
- A Bachelor’s or Master’s degree in Computer Science, Electrical Engineering, Electronics Engineering, or a related technical field from an accredited institution.