Power Systems Software Engineer - Optimization
About the role
As a Software Engineer with Siemens Grid Software, you will join the team that maintains and enhances our industry-leading power systems simulation product: PSS®E. You will be responsible for maintaining and enhancing the PSS® software platform along with other product team members. This position requires detailed knowledge of software engineering practices, agile development methodologies, a love for computer programming, and the drive to build good test plans, test implementation, and software delivery. Additionally, familiarity with optimization algorithms or electric power systems will set you apart from other candidates. Likewise, since much of what we do involves simulation and data analysis, knowledge and experience of data science, mathematical computation, and optimization techniques will make you stand out. Based in the New York Capital Region, this position reports into our Schenectady office for in-person collaboration.
Responsibilities
- Create mathematical algorithms for power systems simulation. This includes creating and maintaining algorithms for power system simulation and optimization
- Work with the Grid Simulation software development team on designing, developing, and testing and documenting the software using modern methodologies and tools such as the Scaled Agile Framework, Jira, Confluence, and Git
- Implementation will predominately be done in C, C++ and Fortran, applying knowledge of object-oriented programming, functional programming, and other techniques to accelerate the process of modeling power systems simulations
- Create robust tests to assess performance, correctness, and usability of the software
- Provide estimates and analysis of tasks required for development
- Stay abreast of new developments in power system analysis, modeling, and optimization
Requirements
- Education requirement: Bachelor of Science or higher in Computer Science, Mathematics, Data Science, Computer Engineering, Physics, or similar field with knowledge of mathematical optimization and software engineering
- Proven strong abilities in software development and a love for making robust code
- Experience developing in Fortran, C, or C++ required; Python is a strong plus, as our codebase spans multiple languages
- Candidates must meet one of the following experience pathways:
- Bachelor’s degree with 2+ years of professional software development experience
- Graduate degree with hands-on academic coding experience
- Completion of a Siemens software development internship