Bank of Ireland

Bank of Ireland

One group. Three branches. Zero shared language.

Role

Lead · System · Governance

Challenge

3 branches. Zero shared language.

Scope

UX · DS · Governance · C-level

Impact

3 platforms. 6 months. 1 system.

01 · Situation

Three teams. No shared infrastructure.

Three branches, three product teams, three independent design histories. Inconsistent digital journeys, internal tools disconnected from customer surfaces, a legacy design language neither responsive nor accessible.

The brief was not to redesign three products. It was to build the conditions under which three teams could produce coherent experiences without constant supervision.

01

3 branches

Fragmented journeys, no shared baseline

02

Disconnected

Internal tooling out of sync with customer surfaces

03

Legacy DS

Non-responsive, non-accessible, WCAG AA gap

04

No governance

No shared structure to prevent re-fragmentation

The real challenge

Three teams. Three histories. Zero shared language.

02 · Approach

Three workstreams. One output.

No long discovery. No final delivery. Each workstream fed the others in real time from day one.

Craft UX/UI

Craft UX/UI

Tension

Three surfaces. No shared production rhythm.

Web, mobile and internal tooling were designed by separate teams with no common handoff process, no shared component baseline and no real-time feedback loop.

Call

Ship in parallel. Feed the DS immediately.

Every validated screen went directly into the design system. No batch handoff at sprint end. Specs via Figma Dev Mode with full edge case documentation. Decisions traced in ADR.

Result

Production in motion, not in batches.

Weekly design reviews with BoI devs kept the loop tight. The DS grew with the product rather than catching up to it.

Design System

Design System

Tension

A legacy base that could not be discarded.

The existing DS had partial adoption across teams. Rebuilding from scratch would have reset trust and delayed delivery. Leaving it unchanged meant accumulating structural debt.

Call

Extend. Don't replace. Token architecture first.

A three-level token structure, primitives, semantic and component, was established as the non-negotiable foundation. Components were then built on top, with full variant and state coverage.

Result

A living system, not a delivered artifact.

Documentation lived in Confluence, updated in real time. Each structural decision was recorded in an ADR so the system could evolve without losing its original intent.

Governance

Governance

Tension

Three branches. No arbitration structure.

Without a shared decision forum, each branch would evolve the system independently. Fragmentation was not a risk, it was the default trajectory.

Call

Put governance in rooms, not docs.

A monthly Design Council with one representative per branch was established as the binding arbitration structure. Presence at Copil and Codir kept design decisions upstream.

Result

Coherence maintained without central authority.

Fragmentation was intercepted at decision level, not patched at component level. C-level stakeholders understood coherence as a business cost, not a design preference.

Take away

A design system holds when the governance does.

03 · Outcomes

What held.

Not the number of components. Whether the system survives after the engagement ends.

BeforeAfter

3 disconnected design histories

1 shared design language

No arbitration structure

Design Council — monthly, binding

Legacy DS, no token logic

3-level token architecture

Fragmented journeys per branch

Coherent experience across all surfaces

Design decisions made locally

Governance embedded at C-level

branches aligned

3

under a single design language

delivery

6 mo

3 platforms in parallel

governance

Design Council

permanent structure installed

system extension

AI patterns

first conversational components

04 · Takeaways

Three things this confirmed.

01

Fragmentation is intercepted at decision level, not patched at component level. Being in the Copil and Codir is where the system is protected or broken.

02

A system built in motion is more durable than one delivered at the end. Every validated screen becomes a stabilized component, not a retrofit to plan.

03

Coherence has to be translated into business language to survive. Inconsistency costs time and money. That lands harder than showing a Figma library.

Closing

The real deliverable was not a component library.

It was a decision infrastructure: the structures, the rituals and the documented rationale that allow teams to build consistently without a central authority to enforce it.