Powering Self-Service for 8 Million Customers

UK Power Networks serves and provides electricity to over 8 million domestic and commercial customers. It owns and maintains electricity cables and lines across London, the South and South East of England. As a regulated company, it’s responsible for keeping the lights on 24/7, connecting new customers to the grid, and providing a whole range of services through numerous customer touchpoints, including digital and conversational interfaces.

Overview

UK Power Networks keeps the lights on for 8 million homes and businesses across London and the South East. Its legacy platform buckled under the traffic spikes that follow every major storm or outage, exactly when reliability matters most. The team needed a complete replatform built for resilience, performance, and accessibility across a wide demographic of users.

I joined as a Senior Front-end Engineer in a team of 3–4 developers, contributing to architectural decisions and key implementation work during the initial replatforming phase. In the second phase — a rebrand and UX overhaul — I took on additional responsibility as a second-in-command to the Lead, helping drive the redevelopment of critical customer journey including outage reporting and service request flows. Accessibility was a consistent priority throughout, with WCAG compliance embedded into every journey from the start.

    Project gallery image

How we built it

The platform was rebuilt using a composable Next.js architecture. Static generation was a deliberate choice for resilience — pre-rendered pages don't fail under sudden traffic spikes. GraphQL connected the front end to backend services, while TypeScript kept the growing codebase maintainable. The stack integrated with an existing .NET backend and Umbraco CMS.

    Project gallery image
    Project gallery image

Tech stack

  • Next.js logo

    Next.js

  • TypeScript logo

    TypeScript

  • GraphQL logo

    GraphQL

  • Umbraco CMS logo

    Umbraco CMS

  • 50%

    Faster Time to Interactive (4.8s → 2.77s)

  • 40k

    Concurrent users supported during peak demand

  • 66%

    Reduction in hosting and licensing costs

  • 86%

    Reduction in digital carbon footprint

There's more to this story...

    Ensuring the platform could handle sudden spikes in traffic during outages and storms, precisely when downtime would be most damaging. Static generation with Next.js was the deliberate architectural answer to that problem.

    I joined as a Senior Front-end Engineer contributing to core architecture decisions, then stepped up as second-in-command to the Lead during the rebrand and UX phase, taking ownership of the most critical customer-facing journeys.

    Accessibility was built in from the start rather than retrofitted. Every journey was developed with WCAG compliance in mind, covering everything from form interactions to error handling, ensuring usability for all users including those in stressful situations like reporting a power cut.

    It reflects the move to static generation and a more efficient architecture. Fewer server requests, lighter pages and optimised assets all compound to significantly reduce the energy cost of every page load across millions of visits.