Jobs and Careers
UT

Software Engineer

Utah State University
United Statesfull_timeVerifiedPosted 18 Oct 2024

About the role

Overview

The software engineering position at ASPIRE focuses on developing, optimizing, and maintaining robust software systems that support the management of electric vehicle infrastructure and energy management services (EMS). This role involves working with a dynamic team to create and maintain web services for data collection, real-time analysis, and long-term storage across a nationwide network of electric vehicle chargers. The engineer will play a critical role in ensuring efficient communication with over 100 charger systems, including high-power DCFC units for transit authorities, utilizing protocols such as OCPP. Additionally, they will be responsible for integrating EMS capabilities to optimize power usage, monitor system health, and ensure interoperability across transit hubs and building-tied chargers. The position requires problem-solving skills, system integration expertise, and a focus on maintaining reliable, scalable software solutions in a rapidly evolving environment.

Responsibilities

  • Develop and maintain software systems: Design, implement, and optimize scalable software solutions to support electric vehicle infrastructure and energy management services (EMS), focusing on reliability and efficiency.
  • Support and enhance web services: Develop and maintain web services for real-time data collection, storage, and analysis, ensuring seamless communication between servers and nationwide charger networks.
  • OCPP integration and control: Implement and manage Open Charge Point Protocol (OCPP) for communication and control of electric vehicle chargers, ensuring proper functionality and control authority over high-power DC fast chargers, including those used by transit authorities.
  • OpenADR support: Integrate Open Automated Demand Response (OpenADR) for energy management and load balancing across charger networks, enabling responsive energy modulation to optimize grid usage and charger operations.
  • Server communication and maintenance: Ensure effective communication across multiple servers for live telemetry, ITS data, and EMS systems. This includes troubleshooting server connections, ensuring data integrity, and optimizing performance for long-term storage.
  • Front-end development with REACT: Build and maintain intuitive, user-friendly interfaces using REACT to support web services, data dashboards, and EMS monitoring, providing stakeholders with real-time insights and control options.
  • Cross-functional collaboration: Work closely with hardware engineers, data scientists, and energy management teams to ensure software solutions are aligned with project goals and infrastructure needs.
  • System health monitoring and troubleshooting: Monitor software and server health, identify issues in data pipelines or communications, and implement solutions to prevent downtime or data loss.
  • Continuous improvement: Proactively improve software systems, focusing on scalability, efficiency, and support for emerging technologies in electric vehicle and energy management domains.

Qualifications

Minimum Qualifications:

  • Bachelor's degree in Computer Science, Software Engineering, or another related field plus 3 years of directly related work experience.
  • Experience with OCPP and OpenADR protocols for electric vehicle infrastructure and energy management.
  • Proficiency in web development using frameworks like REACT and experience building scalable web services.
  • Strong knowledge of server management and communication, including experience with cloud infrastructure, distributed systems, and database management.
  • Experience with API development and integration, ensuring seamless communication between software systems and hardware components.
  • Proficiency in programming languages such as Python, JavaScript, C++, or Java, with experience in developing backend and frontend systems.
  • Familiarity with energy management systems (EMS) and integrating energy efficiency solutions.
  • Experience with real-time data collection and analysis, including handling telemetry data from distributed sources.
  • Problem-solving and troubleshooting skills, especially in high-demand, real-time environments.
  • Strong communication and collaboration skills, with the ability to work effectively in cross-functional teams.
  • Experience with version control (Git) and software development lifecycle (SDLC) best practices.

Preferred Qualifications: 

  • A Master’s degree in Computer Science, Software Engineering, or a related field.

Required Documents

Along with the online application, please include:

  • Resume/CV to be uploaded at the beginning of your application in the Candidate Profile under “Resume/CV"
  • Cover letter to be typed/pasted at the end of your ap
  • Apply for this role

    Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.

    Apply Now →Generate Application Kit

    Free account required — sign up in 30s

    Company

    Utah State University

    View company profile →