Software Engineer
Application Security
Automation
C++ Language
Cloud Native
Cloud Platform
Cloud Platforms
Desktop Support
DevOps
Devops Tools
DevSecOps
Embedded Software
Embedded System
Embedded Systems
End User Support
Engineer
Engineering
Hardware Engineering
Hardware Software Co Design
It Support
Linux
Operating System
Operating Systems
Platform Engineering
Programming
Programming Language
Programming Languages
Real Time Systems
Security Automation
Software Developer
Software Development
Software Engineer
Software Engineering
Software Security
Systems
Systems Software
Technical Support
Unix Operating System
Windows
Job Description
The Software Engineer at EOS Energy Storage will work across hardware platforms to deliver, test, and maintain software that supports utility scale battery power control and communication systems. This onsite role in Pittsburgh, PA combines hands-on development with cross-functional collaboration across electronics, mechanical, and systems engineering.
Key Responsibilities
- Implement software algorithms and functions as part of a cross-functional development team of scientists and engineers.
- Contribute to requirement understanding, definition, and negotiation with internal stakeholders.
- Study existing projects and solutions to support troubleshooting and upgrades aligned with stated requirements.
- Independently develop software with efficient program logic and data manipulation using generally accepted programming standards and techniques.
- Test and debug software using debugging tools and software to confirm code meets standards and requirements, and support efforts to automate testing using in-house built tools.
- Design, debug, and test simulation programs and tools.
- Support certification testing and compliance to safety standards.
- Document and maintain documentation for new and existing designs.
- Perform other duties, responsibilities, and activities as assigned, with or without notice.
Required Qualifications
- Bachelor’s degree in computer science, software engineering, or an allied engineering discipline.
- Minimum of 2 years of experience.
- 2+ years of experience programming for deployment in Linux and Windows environments.
- Experience as a DevOps engineer handling deployment, maintenance, and troubleshooting.
- Experience testing software developed by others.
- Experience with multiple programming and scripting languages, including Python and C++.
- Working familiarity with version control in software development.
- Algorithm development and dynamic system mathematical modeling.
- Knowledge of the software development life cycle.
- Experience packaging software for x86, x64, and Arm processors, including Docker containers and others.
Technologies
RTOS, Linux, Windows, Python, C++, DevOps, version control, Docker, x86, x64, Arm, simulation programs and tools.
Working Conditions
- Office environment.
- Must be able to remain in a stationary position 50% of the time and occasionally move about the office to access file cabinets and office machinery.
- Required to maintain close visual acuity for preparing and analyzing data and figures, transcribing, viewing a computer terminal, and extensive reading.
- May be required to exert up to 25 pounds of force occasionally to lift, carry, push, pull, or move objects, including the human body.
Knowledge, Skills, and Abilities
- Strong written and verbal communication skills.
- Highly independent, task-oriented self-starter able to identify and support a high-level team mission.
Location: Pittsburgh, PA (onsite)