Staff Algorithms Engineer, Autobidder – Palo Alto, California

Tesla

What to Expect

The mission of the Autobidder team is to accelerate the world’s transition to sustainable energy by maximizing the value of storage and renewable assets. We achieve this by building state-of-the-art software products for monetizing front-of-the-meter and behind-the-meter energy storage systems. Our flagship product, Autobidder, is an end-to-end automation suite for wholesale electricity market participation of grid-connected batteries and renewable resources that maximizes revenues by optimally bidding in all available revenue streams in these markets. We are a multidisciplinary algorithmic trading team with expertise in machine learning, numerical optimization, software engineering, distributed systems, electricity markets and trading. We have a proven track record of operating storage assets and delivering high revenues in both utility-scale and Virtual Power Plant (VPP) settings. Our products currently manage over 7GWh of energy storage worldwide and have returned over $330 million in trading profits, and we’re slated for rapid growth on the horizon.

 

You will be responsible for steering the evolution of Autobidder’s bidding and automation algorithms. This includes rapid iterations when entering new markets and devising sophisticated algorithmic approaches to optimize revenues and increase automation in advanced markets. You will develop deep expertise in electricity markets and leverage your technical skills to craft algorithms that help Autobidder deliver best-in-class performance. You will be intimately familiar with the performance and operational nuances of assets operated by Autobidder and will serve as the feedback loop between operational learnings and algorithmic advancements to ensure our algorithms deliver real-world value. You will own production systems and be responsible for their performance, reliability, and availability. Your work will help proliferate battery storage and renewable projects around the globe.

What You’ll Do
Design, implement, and maintain production code for sophisticated bidding, optimization, simulation, and forecasting algorithms
Prototype, benchmark, deploy, and monitor advanced algorithmic features that account for uncertainties in prices and clearing outcomes, optimally allocate quantities to maximize risk-adjusted revenues, reason about interactions with strategic competitors, and account for the influence of quantity on clearing prices for large fleets of utility-scale storage assets and VPPs
Develop in-depth knowledge of electricity markets and grid operations, including the complex dynamics of supply and demand, market structures, and regulatory frameworks
Guide algorithmic decisions to balance performance and complexity while making thoughtful design and infrastructure choices that facilitate a positive developer experience in the long run
Design and develop tooling and simulation systems to monitor, track, and improve the field performance of assets by defining metrics, tracking performance, and driving algorithm changes to enhance asset performance under management
Develop monitoring systems to programmatically detect and diagnose issues
Plan technical roadmaps and lead execution
Inform product definition and business development
Mentor and develop a growing team of exceptional algorithm engineers
Collaborate with machine learning engineers, traders, market analysts, and software engineers to ensure algorithms drive end-to-end value
What You’ll Bring
Proficiency in Python with at least 6 years of experience in software development, familiarity with software development practices including Git, CI/CD, writing production-quality code, and agile development
Experience building real-world products and solutions using numerical optimization technology LP, MILP, nonlinear optimization, and solving real-world optimization problems using solvers such as Gurobi, XPRESS, GLPK or CPLEX
Expertise with relevant Python libraries such as cvxpy, pyomo, pandas, numpy, sklearn or streamlit
Demonstrated experience in developing and maintaining production software systems
Self-motivation, enthusiasm for learning and collaboration, and a passion for working in the clean energy space
Experience with working on cloud-hosted systems and related tooling compute services such as EC2, GCP Compute Engine, container orchestration Kubernetes or Docker
Degree in Mathematics, Statistics, related to numerical optimization, operations research, stochastic control, optimal control, computational finance, or equivalent experience
Domain expertise in forecasting, analysis, or trading in electricity markets such as ISOs like ERCOT, CAISO, PJM, AEMO, and UK National Grid
Experience researching, developing, and deploying new algorithmic strategies to solve novel optimization problems such as decision-making under uncertainty, scenario optimization, MDPs, financial risk modeling, complementarity problems, distributed and decentralized control
Familiarity with machine learning and statistical algorithms including gradient-boosted decision trees, the ARIMA family, transformers, and recurrent networks

Palo Alto, California

Full time

Job Overview