British Gas

Quantitative developer and data scientist

Job description

Want to help the world move towards Net Zero? Centrica is a leader in the decentralized energy market, active in the United Kingdom and Ireland, Europe, North America, and Japan. With price predictability a thing of the past, and supply volatility and new energy technologies taking over, we are using our energy expertise to make the energy sector more environmentally friendly and economically sustainable.

The Demand Side Response (DSR) team focuses on smart energy in residential settings. We explore the technologies and the control and optimization that will make up the home of the future and support the wider energy markets. Energy consumption and production need to be well-aligned for residencies to optimise for cost-benefit. Aside from this optimisation, devices can also be used to participate in energy markets. The wide variety of device types, device settings, household preferences, energy market types and requirements require a well architected platform to be able to perform reliable and scalable. The DSR team has set up such a platform, but there are still a lot of features and optimisations it wants to add. Your role would be to participate in extending the functionality of what our platform has to offer, supporting partners into integrating their devices into our platform, seamlessly.

Our team’s office is in Antwerp-Berchem, Belgium, at walking distance from the train station. Centrica itself is headquartered in London, UK.

The job:

  • Develop and validate control and optimisation techniques e.g. with reinforcement learning, model-predictive-control, Monte Carlo search.
  • Analyse historical data to be able to simulate and forecast typical activity.
  • Bring algorithms to production in a real-time, event-driven setting, in the field or in our lab, often connecting new devices via new APIs or protocols to our cloud platform.
  • Transfer knowledge from projects to the wider team and engage with the wider smart energy community by attending and presenting at conferences or meet-ups and reading and writing publications or blog posts.

The ideal candidate:

An ideal candidate would be:

an adaptable, numerically inclined developer that wants to tackle complex challenges and push the state of the art in the energy sector.

We’ll take that apart in a second but, of course, we’re also adaptable – if you think you’d be a good fit but don’t have all of this then we’d still love to hear from you!


  • You’re comfortable with a variety of tasks and ways of thinking.
  • You know your comfort zone but don’t mind stretching it from time to time.


  • You have experience with data science and analysis methods.
  • You’re comfortable discussing mathematical techniques such as statistical modelling, signal processing, control system processes.
  • You’ve developed a variety of machine learning models.


  • You have experience writing production-ready python code in a professional setting.
  • You have experience with tools like Git and concepts like unit tests.
  • A lot of our work is in a cloud-based and IoT setting so familiarity with messaging (e.g. Kafka), containerised cluster management (e.g. Docker, Kubernetes), and async and reactive programming (e.g. asyncio, threading, RxPy) is a big bonus.

tackle complex challenges:

  • You can translate problems from the real world to a software solution.
  • You feel at ease talking to other stakeholders to understand the challenge’s context.

push the state of the art:

  • You like trying new techniques, reviewing papers and publications.
  • You have a good nose for where innovation gaps or potential partnerships might appear.

in the energy sector:

  • You care about the environment and the impact that we have on it.
  • You are motivated to enable a transition towards a higher share of renewables in the energy mix.


PLEASE APPLY ONLINE by hitting the 'Apply' button.

Applications will ONLY be accepted via the ‘Apply’ button.

This role is being handled by the Centrica recruitment team and NO agency contact is required.

Please let the company know that you found this position on this Job Board as a way to support us, so we can keep posting cool jobs.