EnergyHub empowers utilities and their customers to create a clean, distributed energy future. The Staff Software Engineer I will support the mission by defining the technical vision, driving major initiatives, and developing high-quality solutions while collaborating with cross-functional teams.
Responsibilities:
- Design and implement core platform features that solve for multiple constraints and use cases
- Drive the transition from a monolithic architecture to a microservices-based approach, ensuring scalability, maintainability, and improved system resilience
- Lead technical initiatives and provide guidance on data modeling, contract definition, and API development
- Develop back end solutions, ensuring well-structured, high-quality code with automated testing
- Collaborate cross-functionally with product managers, internal engineering teams, and stakeholders to drive high-impact projects
- Work within real-world constraints to develop creative solutions that maintain platform flexibility and scalability
- Contribute to best practices for CI/CD, data modeling, and iterative development (e.g., PoCs, rapid prototyping, milestone-based execution)
- Mentor and support other engineers, fostering a strong technical culture of respect, open communication, and collaboration
- Other duties as assigned
Requirements:
- 7+ years of professional software engineering experience, preferably with proven success at staff-level responsibilities
- Strong full-stack development experience, including backend, frontend, and relational database modeling and development
- Senior experience and familiarity with SQL and relational databases, and comfortability working with data warehouses and ETL tools
- Proficiency in Java (preferably Java 11+) and experience with at least one modern SPA framework (React, Vue or Angular)
- Experience with web services, RESTful APIs, and contract-driven development
- Strong technical project management skills. Ability to transform vague requirements into initiatives and successful outcomes
- Ability to operate autonomously, providing technical vision and guiding the team toward scalable solutions
- Strong problem-solving skills, capable of balancing multiple use cases while enabling flexibility
- Familiarity with CI/CD pipelines and modern software development practices
- Proven ability to deliver high-quality, iterative value while maintaining execution speed
- Strong communication skills, with an emphasis on cross-functional collaboration and working on challenging technical problems
- Experience with Python a plus
- Experience with S3, MongoDB, AWS, DBT, Snowflake a plus
- Experience working on highly configurable software products a plus