At Siemens we are always challenging ourselves to build a better future. We need the most innovative and diverse Digital Minds to develop tomorrow‘s reality. Find out more about the Digital world of Siemens here: www.siemens.com/careers/digitalminds
NOTE: During the current global health crisis, the priority for Siemens Digital Industries Software is the health and well-being of our entire community including current and future employees, which may add time to our hiring processes. We appreciate your patience and invite you to visit our website to learn more about how Siemens is responding to the pandemic.
Siemens Digital Industries Software is seeking an advanced software engineer to contribute to the development of Simcenter STAR-CCM+. Simcenter STAR-CCM+ is a highly scalable, general purpose, multi-physics application that provides an end-to-end user experience with integrated CAD, meshing, physics modeling and in situ post processing tools.
This opening is part of the Runtime team. This team’s responsibilities include enabling the use of our applications on HPC resources without our users requiring expert HPC knowledge. You will contribute to making HPC resources more accessible to our end users. A successful candidate is expected to maintain quality and backward compatibility while making large-scale changes to existing software.
- Collaborate closely as part of a large, distributed team of developers, testers, and managers.
- Participate in regularly scheduled team conference calls to contribute ideas to drive innovation in our technology, and to communicate project status.
- Use systems for managing development including Jira, Confluence, Git, GitLab and Bitbucket.
- Participate in peer-based code and design reviews.
- Participate in root cause analysis.
- Design, create and document high-quality, extensible software.
- Navigate a large code base containing hundreds of modules and millions of lines of code.
- Travel when necessary (up to 3%) to collaborate with other teams.
Required Knowledge/Skills, Education, and Experience.
- Education - Master’s degree or commensurate experience in computer science, engineering, mathematics, information science (or foreign equivalent) or related field with 3+ years of professional experience progressive, post-academic experience in software design and development OR Bachelor’s degree with 5+ years of post-baccalaureate experience
- Detailed understanding of Linux and Windows operating systems
- Programming expertise in Python, Bash and other shell scripting and current C++
- Experience with Full Stack Python development and supporting tools.
- Programming experience in creating and deploying Python applications and managing package dependencies in Python virtual environments.
- Programming experience in web applications
- Expertise with remote shells / processes, process output, and process cleanup on Linux and Windows
- Understanding of network protocols and file systems, including parallel file systems
- Programming experience with error handling and reporting
- Programming experience in Java
- Good understanding of object-oriented design principles
- Navigating large, legacy code bases
- Using a distributed version control system such as Git
- Issue management using Jira or a comparable system
- Facility with modern IDEs
- Ability to communicate complex technical issues clearly and to present data concisely
- Ability to handle multiple tasks with minimal oversight
Preferred Knowledge/Skills, Education, and Experience.
- Experience with cluster schedulers such as PBS, LSF, Grid Engine, or SLURM
- Understanding of distributed memory parallel programming (MPI) and threading
- Understanding of CPU topologies
- Expertise in physics and mathematics
- Contributions to open-source projects
Organization: Digital Industries
Company: Siemens Industry Software Limited
Experience Level: Experienced Professional
Job Type: Full-time