Staff Software Engineer at ESS
Wilsonville, OR, US

At ESS (NYSE: GWH), our mission is to accelerate global decarbonization by providing safe, sustainable, long-duration energy storage that powers people, communities, and businesses with clean, renewable energy anytime and anywhere it’s needed. As more renewable energy is added to the grid, long- duration energy storage is essential to providing the reliability and resiliency we need when the sun is not shining and the wind is not blowing. 


Our technology uses earth-abundant iron, salt, and water to deliver environmentally safe solutions capable of providing up to 12 hours of flexible energy capacity for commercial and utility-scale energy storage applications. Established in 2011, ESS Inc. enables project developers, independent power producers, utilities, and other large energy users to deploy reliable, sustainable long-duration energy storage solutions. For more information visit 


ESS is seeking a dynamic Software Engineer who will work closely with our development team to create software that will run the flow battery systems. The focus of this role will be the analysis and modeling of energy systems to help the flow battery systems run at optimal performance for the location and application they are deployed.


What you’ll do at ESS.

  • Evaluate, design, develop, upgrade, and maintain new and existing firmware for use in flow battery systems
  • Design algorithms to operate the battery systems optimally in micro-grid or grid-tied applications
  • Participate in the testing process throughout the design cycle of the battery systems
  • Participate in customer design meetings and acceptance reviews
  • Work with design engineers and test technicians to provide technical assistance as needed
  • Assist in debugging field problems
  • Provide leadership to a small team of Software Engineers


What you bring to the table

Minimum Requirements

  • Bachelor’s degree in Electrical Engineering, Computer Science, related field, or equivalent experience
  • 7+ years of experience with increasing levels of expertise and responsibility
  • System modeling experience
  • Strong coding skills in C/C++
  • Experience creating software applications for varied hardware platforms
  • Experience writing code to interface with hardware systems
  • Experience working with database systems
  • Hands-on experience in software architecture and design
  • Experience with Linux system management
  • Understanding of linear mathematics, statistics, optimization
  • Ability to work with minimal direction


Benefits of working at ESS.

In addition to the value of working with and helping grow a global reaching clean technology, ESS offers a Company assisted Health insurance, Approved PPE Reimbursement, Medical & Dental; Flex spending account; 8 paid holidays; 401K, and a competitive PTO accrual.


ESS is committed to the safety and wellbeing of our employees and community therefore we require COVID-19 vaccinations as a condition of employment. 


As an equal opportunity employer, we are open to considering every qualified candidate who is eligible and legally authorized to work in the United States on a full or part-time basis, without a need for sponsorship.


Please note this job description is not designed to cover or contain a comprehensive listing of activities, duties or responsibilities that are required of the employee for this job. Duties, responsibilities, and activities may change at any time with or without notice.