50% off everything
Centrica logo

Enterprise · Software Engineer Interview Guide

Interview language: English

How to Pass the Centrica Software Engineer Interview in 2026

The Centrica DNA (TL;DR)

Centrica's 'Delivery' value underpins assessments, seeking candidates who demonstrate practical application of skills to complex energy challenges. Interviewers probe for examples of driving tangible outcomes, particularly in optimizing operations or advancing net-zero initiatives for brands like British Gas.

The Centrica Interview Loop

Your onsite loop will typically consist of 4 rounds.

  1. 1

    Round 1

    Recruiter Screen
    Motivation, role fit, logistics.
  2. 2

    Round 2

    Coding Screen
    LeetCode-medium algorithmic problems under time pressure.
  3. 3

    Round 3

    System Design
    Distributed systems, trade-offs at scale, architecture under constraints.
  4. 4

    Round 4

    Onsite Coding
    LeetCode-hard, debugging, code clarity, edge cases.
  5. 5

    Round 5

    Behavioral / Leadership
    Past evidence of ownership, influence, resolving conflict.

The Danger Zone: Top Reasons Candidates Fail

Based on our database of Centrica interview outcomes, avoid these common traps:

  • Underestimating the throughput requirements for data ingestion and processing, leading to potential bottlenecks.
  • Not considering edge cases like empty input, invalid timestamps, or time windows that span across days/months.
  • Introducing new bugs or regressions while refactoring.
  • Not being able to articulate how the learned knowledge was applied or its impact.

Get the full Centrica playbook, free

Every round, the exact grading rubric interviewers score against, all the questions, and unlimited mock-interview practice. Free account, no credit card.

Unlock Centrica, free

Test Yourself: Real Centrica Questions

Three real prompts pulled from our database.

Type · algorithmic

Imagine you're building a system to monitor energy consumption for millions of smart meters. Write a function that takes a list of timestamped energy readings (e.g., `{'timestamp': 1678886400, 'consumption': 1.2}`) and returns the average consumption over a given time window (e.g., last 24 hours). Optimize for performance, assuming a very large number of readings.

Type · Conflict Resolution

Tell me about a time you had a significant disagreement with a colleague or manager. How did you handle it, and what was the resolution?

Type · collaboration

Describe a situation where you had a technical disagreement with a colleague or team lead regarding a design decision or implementation approach for a Centrica project. How did you handle the disagreement, and what was the resolution?

+ many more questions, signals, and worked examples

Sign up to unlock the full Centrica grading rubric

Unlock the Centrica rubric, free

Centrica Interview Question Bank

A sample from our database, grouped by round. Sign up to see the full set.

9 of 17 questions shown

1

Recruiter Screen

1
  1. 1

    Type · motivation

    Centrica is a leader in the energy sector, focusing on areas like smart homes, electric vehicles, and renewable energy. What specifically about our work in these areas excites you as a Software Engineer, and how do you see your skills contributing to our mission?
2

Coding Screen

3
  1. 2

    Type · algorithmic

    Imagine you're building a system to monitor energy consumption for millions of smart meters. Write a function that takes a list of timestamped energy readings (e.g., `{'timestamp': 1678886400, 'consumption': 1.2}`) and returns the average consumption over a given time window (e.g., last 24 hours). Optimize for performance, assuming a very large number of readings.
  2. 3

    Type · algorithmic

    You are designing a feature for Centrica's smart home app that allows users to set complex energy-saving schedules (e.g., 'turn off heating if outside temp > 20C and no one is home between 9 AM and 5 PM'). Given a list of user-defined rules and current sensor data, determine if a specific action (like turning off heating) should be triggered. Focus on the logic for evaluating multiple conditions and dependencies.
  3. + 1 more questions in this round (sign up to unlock)
3

System Design

3
  1. 4

    Type · architecture

    Design a scalable system for Centrica to collect and process real-time energy usage data from millions of smart meters. Consider data ingestion, storage, processing for analytics (e.g., anomaly detection, demand forecasting), and how to serve this data to user-facing applications.
  2. 5

    Type · architecture

    Centrica is developing a new platform to manage distributed energy resources (DERs) like solar panels and battery storage for customers. Design the backend system that would allow us to aggregate, control, and optimize the performance of these DERs across a large customer base, ensuring grid stability and maximizing customer benefits.
  3. + 1 more questions in this round (sign up to unlock)
4

Onsite Coding

4
  1. 6

    Type · algorithmic

    You're developing a feature for Centrica's energy trading platform. Given a historical dataset of electricity prices and demand, implement an algorithm to identify the optimal times to buy and sell energy to maximize profit, considering transaction costs and a limited number of trades. This is a variation of the stock trading problem but with energy market dynamics.
  2. 7

    Type · code-quality

    Refactor the following Python code, which simulates a simplified energy grid balancing mechanism. Improve its readability, maintainability, and efficiency. Pay attention to variable naming, function decomposition, and error handling.
  3. + 2 more questions in this round (sign up to unlock)
5

Behavioral / Leadership

6
  1. 8

    Type · ownership

    Tell me about a time you encountered a significant technical challenge or bug in a production system that was impacting customers. What was the issue, what steps did you take to diagnose and resolve it, and what was the outcome?
  2. 9

    Type · collaboration

    Describe a situation where you had a technical disagreement with a colleague or team lead regarding a design decision or implementation approach for a Centrica project. How did you handle the disagreement, and what was the resolution?
  3. + 4 more questions in this round (sign up to unlock)

Unlock all 17 Centrica questions, free

No credit card. Every question with its framework, the grading signals interviewers score against, and a worked answer for each.

Unlock all 17 Centrica questions

Interview tracks at Centrica

How Centrica's DNA translates across functions. Pick your role.

Compare Centrica with similar employers

Same DNA, different bar. Browse the closest companies in our database and see how their loops differ.

Practice Centrica interviews end-to-end

Sample answers

What a strong answer to these Centrica interview questions shows.

Imagine you're building a system to monitor energy consumption for millions of smart meters. Write a function that takes a list of timestamped energy readings (e.g., `{'timestamp': 1678886400, 'consumption': 1.2}`) and returns the average consumption over a given time window (e.g., last 24 hours). Optimize for performance, assuming a very large number of readings.

A strong answer shows: Use of appropriate data structures (e.g., sorted lists, sliding window techniques).; Clear explanation of time and space complexity.; Handling of edge cases and error conditions..

Tell me about a time you had a significant disagreement with a colleague or manager. How did you handle it, and what was the resolution?

A strong answer shows: Focuses on understanding the other person's perspective.; Communicates their own viewpoint calmly and respectfully.; Seeks common ground or a mutually agreeable solution.; Demonstrates an ability to move past the conflict and maintain a working relationship..

FAQ

WorkfiveExplore careers on Workfive

Unlock the free Centrica interview guide

Sign up