Are you a British citizen?
If you are not a British citizen, please state your current visa status.
Do you currently require visa sponsorship?
Will you require visa sponsorship in the future?
What are your salary expectations for this position? Please state your gross, annual salary expectations in GBP.
Please inform us of your notice period.
Aurora Energy Research is based in Oxford and currently we are benefiting from a hybrid working model, working three days from the office and two days from home, as per our policy. Would you be open working in a hybrid basis?
May we consider your application for a different role within Aurora Energy Research?
Chronos is Aurora’s battery dispatch model. Written predominantly in Python, it uses optimisation techniques combined with heuristic trading policies to fundamentally model the trading decisions and physical dispatch of battery energy storage systems (BESS) across wholesale, ancillary, balancing, and real-time markets over investment time horizons (up to 2060). Used for valuing BESS assets globally – as well as co-located sites with BESS and renewables – Chronos’s modular architecture is critical to Aurora’s ability to accurately reflect the market rules and requirements of many different jurisdictions in a single configurable software ecosystem.
We’re looking for a Lead Model Developer to help us build and maintain the Python codebase behind Aurora’s Chronos modelling software product. You’ll work in a collaborative engineering environment, owning feature development and improving code quality, maintainability, and developer experience in the model stack used across our business. You will collaborate with your colleagues in the Modelling team to define practical methodologies, with your focus being on turning these approaches into robust, well‑tested, scalable software.
You’ll thrive here if you enjoy writing clean, maintainable Python, shaping libraries and packages other teams rely on, and raising engineering standards (TDD, CI/CD, reviews, readability) across a large, shared codebase.
The position suits an individual with 3+ years of experience in software development who is interested in a career applying software engineering techniques to modelling software solutions.
Be the in-house expert for all battery and asset energy dispatch modelling
Design, implement, and maintain Python modules/packages in the modelling codebase; own components over time and steward their quality and usability for other teams.
Translate modelling methods into production‑quality code, collaborating with method owners in the Modelling team; ensure implementations are readable, tested, and traceable.
Improve code quality and developer experience by refactoring for clarity, strengthening interfaces and simplifying implementations.
Champion automated testing and TDD; driving the adoption of modern software engineering practices in the model development team.
Participate in code reviews and technical design discussions
Identifying and addressing architectural bottlenecks and opportunities to improve scalability and developer experience
Knowledge of power and energy trading methodologies
Familiarity with mathematical optimisation methods
Strong software engineering fundamentals
Experience of leading others in technical work
An interest in working in the energy/decarbonization sector
Professional Python experience (3+ years) in a commercial, team‑based software environment, delivering components used by other teams/customers
Comfortable collaborating with Modelling, Research, and Product teams to implement methods as robust, maintainable code; motivated to raise standards for others
A relevant degree in a quantitative field such as Mathematics, Physics, Engineering, or Computer Science
Experience building software using Test Driven Development and Continuous Delivery
Experience developing modelling or simulation software, or with mathematical optimisation (LPs/MIPs) - particularly in the energy industry
Experience in energy trading or energy generation asset simulation
Experience stewarding internal libraries/SDKs, packaging (pyproject.toml, Poetry/uv) and dependency management at scale
Experience in managing or mentoring junior colleagues
Some of the benefits we include are:
Private Medical Insurance
Employee Assistance Programme (EAP)
At AER, we are committed to offering flexibility in the way we work. Most of our roles are hybrid with a mix of in-office/home working and potentially adjustable working hours. Let’s discuss what works for you and AER during the interview process.
The Company is committed to the principle that no employee or job applicant shall receive unfavourable treatment on grounds of age, disability, gender reassignment, race, religion or belief, sex, sexual orientation, marriage or civil partnership, pregnancy and maternity.
To apply, please submit your Résumé / CV, a personal summary, your salary expectations and please inform us of your notice period.
Unfortunately, we are unable to accept applications via email, telephone, or social media platforms. To be considered for this position, please submit your application using the link provided. Applications submitted through any other channel will not be reviewed.
About Aurora Energy ResearchFrom its academic roots, Aurora Energy Research is a thriving, rapidly growing company, currently serving over 600 of the world’s most influential energy sector participants, including utilities, investors, and governments. While we constantly strive to reach new markets and diversify our product portfolio, we are already active across the globe in Asia-Pacific, Latin America, Europe, and North America, working with leading organisations to provide comprehensive market intelligence, bespoke analytic and advisory services, and cutting-edge software.
We are a diverse team of experts with vast energy, financial, and consulting backgrounds, covering power, hydrogen, carbon, and fossil commodities. With this, we provide data-driven intelligence to fuel strategic decisions in the global energy transformation