The Data Analytics Software Engineer will be responsible for analyzing data for our virtual power plant from hundreds of thousands of devices and millions of data points per day.
You will create pipelines and scalable storage solutions that enable analysis of data from distributed energy resources like electric vehicles, batteries, thermostats, solar, and smart hot water heaters, in service of our utility programs.
You will collaborate with cross-functional teams, including product managers, software developers, and user interface developers, to ensure that our software solution provides accurate data for utility customers.
Key responsibilities include designing, implementing, and maintaining efficient data pipelines for ingesting high-volume time-series data from multiple sources.
You will optimize data storage using scalable solutions such as columnar stores, time-series databases, and data lakes.
You will build and manage ETL/ELT processes to ensure data integrity, quality, and availability.
You will develop solutions to query, aggregate, and analyze time-series data in real-time and batch modes.
You will grow our analysis into a Hadoop-like Big Data job and support visualization efforts in Tableau.
You will build forecasting using AI models along with other team members to predict value provided to utilities.
You will ensure our scheduling service accurately collects data from devices.
You will collaborate with product and design teams to deliver the underlying data to demonstrate impact, enthrall customers, and meet business objectives.
You will follow engineering best practices, including code quality, testing, CI/CD pipelines, and agile methodologies.
You will ensure system reliability, scalability, and performance for time-sensitive data processing.
You will monitor data flows and build alerts for anomalies or failures in pipelines.
Requirements:
A Bachelor’s degree in Computer Science, Software Engineering, or an Engineering field is required.
You must have 3+ years of experience in large-scale data analytics.
Experience building and operating scalable, high-performance Big Data systems such as Hadoop, Spark, or Azure Synapse Analytics is necessary.
A strong understanding of software architecture principles, data modeling, design patterns, and best practices is required.
Experience with cloud platforms (AWS and Azure) and microservices architectures is essential.
Proficiency in C# is required.
You must have experience with Big Data databases and distributed systems.
Strong problem-solving skills with the ability to analyze complex technical challenges and implement effective solutions are necessary.
Excellent communication and collaboration skills, with the ability to work across teams and communicate technical concepts to non-technical stakeholders, are required.
Knowledge of DevOps practices and CI/CD pipelines is necessary.
Experience with containerization technologies like Docker and Kubernetes is required.
Knowledge of security best practices in software development is essential.
Familiarity with agile development methodologies (Scrum, Kanban, etc.) is required.
Preferred experience includes knowledge of the electricity grid and utilities, knowledge of energy markets, demand response, or virtual power plants, proficiency in Salesforce, Tableau, and Mulesoft, and familiarity with Kafka.
Benefits:
The position offers a Health Care Plan that includes Medical, Dental, and Vision coverage.
A Retirement Plan with a 401k and generous match is provided.
Life Insurance options include Basic, Voluntary, and AD&D coverage.
Paid Time Off is included in the benefits package.
Short Term and Long Term Disability coverage is also provided.