Available for new opportunities · Dublin, Ireland

Senior UX / Product Designer

Bhuvaneshwari
Nadar

Enterprise & SaaS Specialist

8+ years designing complex enterprise systems, SaaS workflow tools, and data-heavy applications. I bring structure to ambiguity — turning messy problems into intuitive, scalable experiences.

Previously at

SAP IBM DEPT Agency Infosys OpenTelemetry · CNCF
Bhuvaneshwari Nadar
8+
Years of Experience
4
Enterprise Companies
4
Featured Case Studies
1G
Stamp · Work Authorised

What I Do

Designing for complexity

I specialise in enterprise UX — the kind of work that lives deep in the product, where clarity matters most and the stakes are high.

⚙️

Enterprise UX & Workflow Design

Admin consoles, approval flows, multi-step decision trees, and data-heavy dashboards designed for power users who can't afford confusion.

Process Mining Stepper Flows Bulk Actions Data Tables
🔬

Research & Strategy

Mixed-method research — interviews, usability testing, Baymard-based heuristic evaluation, and surveys — to frame the right problem before solving anything.

User Interviews Usability Testing Heuristic Evaluation Persona Development
🤖

AI-Enabled Design

Embedding AI across the entire UX process — from early research synthesis and pattern analysis, to generating and stress-testing design concepts, to validating decisions with data. AI isn't a feature I design for; it's a tool I work with at every stage.

AI-Assisted Research Synthesis Generative Concept Exploration Figma Make LLM Feature UX Prompt-Driven Iteration

Design Systems & Accessibility

Designing within and contributing to established design systems — translating tokens, components, and guidelines into consistent, production-ready work. Strong WCAG compliance practice with real audit experience across enterprise and open source products.

WCAG Design Tokens Stark · WAVE Component Libraries

My Approach

"I bring structure to ambiguity. I combine systems thinking, user-centered design, and data insights to create experiences that are intuitive, scalable, and aligned with business goals."

Working closely with engineering, PMs, and data teams to ensure feasibility and high-quality execution — not just beautiful mocks, but designs that actually ship and perform.

Selected Work

Recent case studies

A selection of enterprise UX and product design projects

View All Projects →

Selected Projects

Work that matters

Enterprise UX and product design across finance, SaaS, and e-commerce. Every project starts with a user problem worth solving.

SAP · 2024
SAP Signavio · Process Manager OVERLAY MODE v0.148 → v0.150 Receive +ADDED Validate ~CHANGED Approve −REMOVED Post Added Modified Removed CHANGES · 18 TOTAL +4 nodes added ~12 nodes modified −2 nodes removed 35% faster review
Enterprise UX · Overlay SAP · 2024

Enterprise Workflow: Overlay Experience

Redesigning version comparison for SAP Signavio's process analysts — turning a confusing diff view into a clear, side-by-side overlay that supports faster, more confident decisions.

View Case Study
DEPT Agency · 2023
🥃 Product Image DIAGEO · PREMIUM SPIRITS Johnnie Walker Black Label 12 Year Old ★★★★★ (2,847 reviews) €42.99 Smoky Vanilla Oak ADD TO BAG HONEYCOMB SYSTEM Primary CTA Rating Block Qty Selector Flavour Tags Awards Badge Review Cards 6 reusable components
E-commerce · PDP DEPT Agency · 2023

Ecommerce PDP Redesign

Redesigning the product detail page within Diageo's Honeycomb design system — Baymard-based heuristic evaluation identified key drop-off points, driving conversion-focused improvements for a major retail client.

View Case Study
Available Immediately · Stamp 1G · Dublin 18

About Bhuvi

Senior UX / Product Designer · Enterprise & SaaS Specialist

I'm a Senior Product Designer with 8+ years delivering complex enterprise systems, SaaS workflow tools, and data-heavy applications at SAP, IBM, DEPT Agency, and Infosys. My speciality is end-to-end design: from discovery and research through interaction modelling, working within established design systems, and engineering handoff.

AI is part of how I work across the entire design process — not just a single phase. I use it to accelerate research synthesis, explore and pressure-test concepts, generate variations, and make faster, better-informed design decisions. Currently driving open source UX strategy for OpenTelemetry (CNCF) and deepening product management skills via UVA Darden.

I'm fully eligible to live and work in Ireland and available for an immediate start.

Experience

May 2026 – Present

Open Source UX Lead

OpenTelemetry · CNCF (Volunteer)

Leading UX for a v1 discovery engine covering 1,000+ observability components. WCAG-compliant accessibility audit of Stability Badges and async design-to-code specs across a 5-phase roadmap.

Nov 2025 – Present

Product Design Apprentice

Tech Fleet (Voluntary)

Leading workflow UX design in an agile cross-functional squad. Translating complex requirements into multi-step workflows and high-fidelity prototypes. Using AI throughout the design process — for research synthesis, concept generation, and iterative exploration in Figma Make — to reduce cycle time and sharpen design decisions.

Nov 2023 – Oct 2024

Product Designer

SAP · Dublin

Designed UX for enterprise submission and validation workflows within SAP's suite. Used Signavio Process Manager and process-mining insights to map current-state workflows and deliver data-heavy dashboards for finance and operations teams.

Jun 2022 – Oct 2023

Senior UX Designer

DEPT Agency · Dublin

Led UX across e-commerce and payments products — onboarding, identity verification, and transaction flows — for a major retail client. Conducted Baymard-based heuristic evaluations and drove conversion improvements.

Feb 2020 – Dec 2021

Senior UX Designer

IBM · India

Designed UX for enterprise applications with complex multi-step workflows, supporting digital transformation across financial services and operations. Delivered wireframes, prototypes, and interaction models for cross-functional global teams.

Apr 2018 – Feb 2020

Lead UX Designer

Infosys · India

Designed workflow UX for finance and banking clients. Completed the Strategic Design Program at RISD (Rhode Island School of Design) Centre for Complexity.

Jan 2016 – Mar 2018

Freelance UX / Web Designer

Independent · India

UX research, interaction design, and prototyping for agencies and direct clients. Applied front-end skills (HTML5, CSS/Sass, JavaScript) to build functional wireframes and production-ready designs.

Core Skills

Design

  • Enterprise UX
  • Interaction Design
  • Information Architecture
  • Design Systems (working within)
  • Prototyping (lo–hi fi)
  • Accessibility (WCAG)

Research

  • User Interviews
  • Usability Testing
  • Heuristic Evaluation
  • Surveys & Analytics
  • Persona Development
  • Process Mining

Tools

  • Figma & Figma Make
  • Miro / FigJam
  • Axure / Adobe XD
  • GA4 / Hotjar
  • Stark / WAVE
  • Jira / Claude

Education & Certifications

🎓

Digital Product Management

UVA Darden School of Business / Coursera · In Progress 2026

Accessibility: Design for All

Interaction Design Foundation · Oct 2025

🤖

AI for Designers

Interaction Design Foundation · Sep 2025

📊

Google Analytics 4 (GA4)

Google · Oct 2025

🎨

Strategic Design Program

Rhode Island School of Design (RISD)

💻

B.Tech, Information Technology

Anna University, Chennai · 2013

Open to new roles · Immediate start

Let's work together

I'm looking for senior product design roles in enterprise, SaaS, or fintech — ideally in Dublin or remote. If you have an interesting problem, I'd love to hear about it.

📍

Location

Dublin 18, Ireland · Stamp 1G · Available immediately

💼

Send a message

Note: Connect this form to a service like Formspree or Netlify Forms when deploying.

Back to Work

Enterprise UX · SAP Signavio · 2024

PVA Governance Experience

Designing a decision-ready governance system that turned fragmented detective work into fast, traceable, data-driven decisions for global process owners.

Role

Lead Product Designer

Timeline

6 weeks

Key Impact

87% faster decisions

Team

PM · Engineering · Data Science · SMEs · GPOs

SAP Signavio · Process Variant Analyzer — Governance Dashboard GOVERNANCE VIEW ANALYTICS COMPLIANCE SCORE 87% HIGH SEVERITY 12 SLA BREACHES 3 RESOLVED 96% VARIANT DETAIL · AP_INVOICE_VARIANT_003 RISK SCORE 75 / 100 ROOT CAUSE Manual approval bypass · 34 occurrences Missing dual-control check · 12 cases GOVERNANCE ACTION APPROVE REJECT ASSIGN AUDIT TRAIL 14 May — Approved by J.Smith · GPO EMEA 12 May — Escalated by A.Kumar · Analyst 87%

The problem with governance tools

Global enterprises run thousands of process variants across regions, systems, and exceptions. Governance Process Owners (GPOs) are responsible for ensuring global compliance — but the tools they used weren't built for decision-making.

They spent hours stitching insights from dashboards, exports, emails, and spreadsheets. I redesigned the governance experience inside SAP Signavio's Process Variant Analyzer (PVA) to make decisions faster, clearer, and fully traceable.

Built for exploration, not governance

The existing experience was built for exploration, not governance. GPOs had to jump between multiple tools to gather context, manually calculate risk scores in Excel, and rely on analysts to interpret root causes. Governance actions — approve, reject, assign — were happening in email threads, leaving no traceability.

The biggest issue wasn't lack of data; it was lack of a system that supported decision-making. GPOs needed a single place where they could understand a variant, evaluate its risk, and take action without losing context.

CURRENT STATE · GPO WORKFLOW Dashboard SAP Signavio Excel Export Manual risk calc Email Thread Decision record SharePoint Audit storage Average: 18 minutes per decision · 0% traceable Design goal: 2 minutes · 100% traceable "I don't need another diagram. I need a score I can trust — and the ability to act immediately." — GPO, EMEA region

Current-state journey map — showing fragmentation across tools

The real pain: cognitive load, not complexity

Through interviews with GPOs and analysts across NA, EMEA, and APAC, I learned that the core pain wasn't the complexity of the process — it was the cognitive load created by scattered information. GPOs were expected to ensure global compliance, but the tools forced them into manual detective work.

"I don't need another diagram. I need a score I can trust — and the ability to act immediately."

This clarified that the solution needed to be decision-first, not analytics-first. The entire design direction shifted based on this single insight.

USER RESEARCH · 12 INTERVIEWS · NA / EMEA / APAC 👤 Governance Process Owner Finance & Operations Primary pain points • Scattered tools, no single view • Manual risk score in Excel • Decisions in email (no trail) • 18-min avg per variant 🔍 Process Analyst Finance Operations · Global Primary pain points • Interpreting root cause data • No severity prioritisation • Dashboard information overload • Slow reporting cycle KEY DESIGN INSIGHT "I don't need another diagram. I need a score I can trust — and the ability to act immediately." — GPO, EMEA region → Decision-first, not analytics-first → Progressive disclosure → Transparent scoring

GPO persona and pain point synthesis

Audit + competitive analysis

I conducted a UX audit of the existing PVA experience and mapped the governance workflow end-to-end. I also analysed four competitors — Celonis, ARIS, UiPath, and IBM — to understand how the market approached variant analysis and governance.

The audit revealed five critical gaps:

  • No unified scoring model — risk lived in spreadsheets
  • No prioritisation or severity indicators — everything looked equally urgent
  • No root-cause visibility — analysts had to dig manually
  • No built-in governance actions — decisions happened in email
  • No audit trail — compliance decisions were untraceable
COMPETITIVE ANALYSIS · 4 TOOLS BENCHMARKED Feature Celonis ARIS UiPath IBM PVA v2 Unified risk scoring model ~ In-app governance actions ~ ~ Built-in audit trail Progressive disclosure ✓ = present ~ = partial ✕ = absent

Competitive analysis: Celonis, ARIS, UiPath, IBM

Four principles to prevent scope creep

These principles helped align the cross-functional team and gave us a shared vocabulary for evaluating design decisions throughout the project.

Decision-first

Surface the score and actions before the data. Users should never have to go looking for the ability to act.

Trust through transparency

Explain how scores are calculated. Hidden logic erodes confidence, especially in governance contexts.

Progressive disclosure

Simple summary first, full detail on demand. Don't overwhelm — guide.

Full traceability

Every governance action is logged automatically. No more email threads as audit trail.

From three directions to one truth

I explored several directions, including table-based comparisons, multi-panel dashboards, and side-by-side variant cards. Through testing, I learned that GPOs preferred a single-variant view with clear scoring and a persistent action panel.

The biggest challenge was balancing transparency with simplicity. Data science wanted to expose the full complexity of the scoring model, while GPOs wanted a high-level score they could trust. I solved this by using progressive disclosure: a simple score upfront with expandable sections for deeper detail.

CONCEPT A — TABLE VIEW (REJECTED) Variant ID Risk Score Root Cause Action AP_INV_VAR_003 75 HIGH Manual bypass Review → Why rejected: GPOs lost context switching rows. No single-variant focus. Actions required extra click.

Concept A — Table-based comparison view

FINAL DIRECTION — SPLIT PANEL · CONTEXT + ACTION CONTEXT PANEL AP_INV_VARIANT_003 RISK 75 /100 ROOT CAUSE Manual approval bypass · 34 occ. ACTION PANEL APPROVE REJECT NOTES Add governance note… ✓ Auto-logged to audit trail on submit CHOSEN ✓

Concept B — Multi-panel dashboard (rejected after testing)

One screen, everything you need

I designed a GPO Dashboard that gives governance owners a global view of compliance health at a glance — compliance score, high-severity deviations, regions requiring attention, SLA breaches, and top governance issues.

GPO Dashboard · Governance Overview · Q2 2024 COMPLIANCE 87% HIGH SEV. 12 RESOLVED 96% SLA BREACHES 3 COMPLIANCE TREND · 6 WEEKS 87% TOP ISSUES Manual approval bypass Missing dual-control Late posting variance VARIANT QUEUE · RANKED BY RISK AP_INVOICE_VAR_003 Risk: 75 HIGH GL_POSTING_VAR_007 Risk: 58 MED

GPO Dashboard — entry point for triaging variants by severity

The variant queue ranks variants by risk, severity, and frequency — ensuring GPOs always start with the highest-impact issues. The core variant detail screen keeps the decision and the context in one place:

  • Left side: Compliance score, scoring breakdown, root-cause analysis, evidence, process metadata
  • Right side: Approve / reject / assign actions, due dates, notes, automatic audit trail
AP_INVOICE_VARIANT_003 HIGH RISK COMPLIANCE SCORE 75 /100 SCORING BREAKDOWN Frequency score · 70% Impact score · 80% Compliance risk · 50% ROOT CAUSE Manual approval bypass — 34 occurrences Missing dual-control gate — 12 cases GOVERNANCE ACTION GOVERNANCE ACTION APPROVE REJECT ASSIGN NOTES Add governance note… AUDIT TRAIL 14 May — Reviewed by J.Smith · GPO 12 May — Escalated by A.Kumar ✓ All actions auto-logged to audit trail

The core variant detail screen — decision and context in one place

Variant Queue · 47 variants pending VARIANT REGION RISK SEVERITY FREQ. AP_INVOICE_VARIANT_003 EMEA 75 HIGH 847/mo GL_POSTING_VARIANT_007 APAC 58 MED PO_PROCESS_VARIANT_014 NA 44 VENDOR_ONBOARD_V021 GLOBAL 31 18 min 2 min

Variant queue — ranked by risk, severity, and frequency

View interactive prototype

Explore the full end-to-end governance flow in Figma

Open in Figma →

From 18 minutes to 2 minutes

87%

Reduction in time-to-decision

18 min → 2 min per variant

96%

Task completion rate

Usability test results

100%

Governance actions traceable

Zero email-based decisions

Designing for trust

This project fundamentally changed how PVA supports governance. By shifting the product from an analytics-first tool to a decision-ready system, I helped GPOs move from manual detective work to confident, data-driven decision-making.

The biggest learning was the importance of designing for trust. Transparency in scoring, clarity in root causes, and a clean, focused layout were essential to building confidence in the system. This project strengthened my ability to balance technical complexity with user-centered simplicity — something I carry into every design challenge.

← All Projects

Back to Work

Back to Work

Enterprise UX · SAP Signavio · 2024

Overlay Comparison Experience

Redesigning version comparison for SAP Signavio's process analysts — from a fragmented side-by-side view to a unified overlay that preserves spatial context and reduces cognitive load.

Role

Lead Product Designer

Timeline

6 weeks

Key Impact

35% faster comparison

Team

PM · Engineering

SAP Signavio · Process Manager OVERLAY MODE ✓ v0.148.0 → v0.150.0 AP Invoice Process / Comparison View / v0.148 → v0.150 PROCESS DIAGRAM · AP_INVOICE_VARIANT_003 Invoice Receipt +1 3-Way Match ~3 yes no Approve Payment ~2 Post to GL −2 Archive Record Exception Handler +1 Added (2) Modified (5) Removed (2) Unchanged (6) Changes · 9 total All (9) Invoice Receipt Task added — new entry point for PO-backed invoices + added 3-Way Match 3 attributes changed — timeout, assignee group, escalation path ~ modified Approve Payment 2 attributes changed — approval threshold, dual-sign rule ~ modified Post to GL Task removed — merged into Archive Record step − removed SELECTED CHANGE Invoice Receipt + Task added in v0.150.0 VIEW DETAILS →

Hundreds of revisions, no good way to compare them

SAP Signavio's process analysts review hundreds of diagram revisions every week — yet their comparison workflow relied on a fragmented side-by-side view that forced users to mentally map changes across two separate panels.

I redesigned the comparison experience into a unified Overlay Comparison Mode that preserves spatial context, reduces mental effort, and enables analysts to evaluate changes directly within the diagram.

High cognitive load, slow decisions

Process analysts were struggling with a workflow that was fundamentally broken:

  • High cognitive load from mentally aligning two diagrams simultaneously
  • Loss of spatial orientation when switching between revision views
  • 4.5+ minute comparison cycles for a task that should take seconds
  • Frequent misinterpretation of added, removed, or modified elements
  • No unified workflow — context switching broke concentration
BEFORE Fragmented side-by-side comparison — the old experience VERSION A · v0.148.0 Invoice Rcpt 3-Way Match Approve Pmt Post to GL USER PAIN · Panel A ❶ No visual indicator of what changed ❷ Must mentally memorise positions ❸ Context lost when scrolling ❹ Zoom level not synced to Panel B Result: 4.5 min avg comparison time VS VERSION B · v0.150.0 Invoice Rcpt 3-Way Match Approve Pmt USER PAIN · Panel B ❶ Spatial layout differs — can't align mentally ❷ No colour coding — all nodes look identical ❸ Removed nodes simply absent — invisible ❹ No summary of what or how much changed Result: high error rate, loss of trust in comparison tool

The existing experience — two separate panels, no shared spatial context, no change indicators

Who are process analysts, and what do they need?

Process analysts operate in a high-volume, compliance-critical environment. They're not casual users — they're power users who need to move quickly and trust their tools. Speed and accuracy are non-negotiable; confusion is costly.

USER PERSONA Process Analyst · Enterprise Finance Operations PA Maya · Senior Process Analyst Global Finance Ops · SAP Signavio power user · 5 yrs experience GOALS → Verify compliance before signing off a process revision → Spot regressions fast — before they reach production → Review 20–30 revisions per week without losing context → Produce auditable sign-off evidence for compliance team PAIN POINTS ✕ Old tool forces mental mapping across 2 panels ✕ Removed nodes simply disappear — invisible changes ✕ No summary of what changed — must review everything ✕ Comparison sessions average 4.5 min — feels too slow "I shouldn't need to hold a mental map in my head. The tool should show me what changed — in context, right there on the diagram." — Interview synthesis · Process analyst, EMEA finance team

Process analyst persona — power user with high-volume, compliance-critical review needs

Mapping what exists before designing what's next

I conducted contextual interviews with analysts, observed live comparison sessions, and ran a heuristic evaluation of the existing interface. I also benchmarked against GitHub diff views, Figma version history, and Adobe Compare Documents to understand established mental models for change comparison.

COMPETITIVE BENCHMARKING How leading tools handle version comparison TOOL APPROACH SPATIAL CONTEXT COLOUR CODING KEY LEARNING GitHub Diff Line-by-line text diff, split or unified view ✓ Good ✓ Good Green/red works for text. Breaks for visual diagrams. Figma Version History Timeline slider, one version at a time ~ Partial ✕ None Overlay concept preserves spatial memory. Borrow this. Adobe Compare Docs Highlights + side panel change list, click to jump ✓ Good ~ Partial Change panel + jump nav is the right mental model. Signavio (existing) Fixed split panel, no change highlighting ✕ None ✕ None This is the gap we're fixing. Everything to improve on. KEY DESIGN INSIGHT Best-in-class tools (Adobe, GitHub) use overlay + colour coding + a change list panel with click-to-navigate. Signavio needs all three. The unique constraint: changes must stay in spatial context of a BPMN diagram, not a text file.

Competitive benchmarking — GitHub, Figma, Adobe, and Signavio's existing tool assessed against three key criteria

Restructuring how changes are surfaced

The old IA scattered change information across panels, tabs, and tooltips. I restructured it around a single diagram view with a contextual change panel — keeping the diagram as ground truth and surfacing changes as annotations within it.

INFORMATION ARCHITECTURE Old structure vs. redesigned single-canvas model BEFORE — Scattered across 4 surfaces Panel A Panel B Tooltip layer Side tabs User must mentally assemble change picture from 4 separate surfaces ✕ Change data fragmented across panels ✕ No single source of spatial truth ✕ User bears full cognitive load of synthesis ✕ Actions and context in different places REDESIGNED AFTER — Single-canvas, layered model Diagram Canvas (ground truth) Change overlays rendered directly on nodes Change badges on diagram nodes Change panel contextual + filterable ✓ Changes visible in spatial position ✓ Single diagram — no panel switching ✓ Change panel is contextual, not primary ✓ Actions live next to the thing being changed

IA restructure — from 4 fragmented surfaces to a single-canvas, layered model with contextual change panel

From wireframes to Fiori-aligned system

1

Sketching the overlay concept

Rapid sketches testing how change states (added / removed / modified) could be colour-coded directly on the diagram without cluttering it.

2

Low-fidelity wireframes

Testing panel layout, change list placement, and toggle behaviour. Validated with 3 analysts before moving to high-fidelity.

3

SAP Fiori design system alignment

Ensuring all design decisions worked within SAP's Fiori design system — using its established components, tokens, and interaction patterns rather than introducing custom elements. This kept engineering handoff clean and the experience consistent with the wider SAP product suite.

4

Usability testing & iteration

Moderated sessions with 6 analysts. Key finding: analysts wanted a "change count badge" on diagram nodes before selecting them — added in final iteration.

WIREFRAME EXPLORATION Three layout directions tested with 3 analysts Concept A — Full Split Version A Version B Analyst feedback "I still have to mentally align two layouts. Same problem as the old tool." ✕ Rejected — too similar to existing Concept B — Overlay + Right Panel Single Canvas +new ~mod −del Changes Analyst feedback "This is it. I can see what changed right on the node. List helps me navigate fast." ✓ Selected for high-fidelity Concept C — Bottom Drawer Single Canvas (full width) Change drawer (collapsed) ▲ expand Analyst feedback "Drawer hides changes by default. I'd forget it's there mid-review." ✕ Rejected — too hidden

Three wireframe concepts tested with analysts — Concept B selected for preserving spatial context while surfacing changes inline

One diagram, every change visible

The final Overlay Comparison Mode layers change states directly onto the diagram using colour-coded highlights — green for added, red for removed, amber for modified. A collapsible change panel on the right provides a filtered list, summary stats, and one-click navigation to each change.

SAP Signavio · Process Manager · AP Invoice Process OVERLAY MODE ON v0.148.0 → v0.150.0 AP Invoice Process / Comparison Overlay Side-by-side Export Sign off AP_INVOICE_VARIANT_003 · v0.148→v0.150 Invoice Receipt +1 3-Way Match ~3 Approve Payment ~2 Post to GL −2 Exception Handler +1 Added Modified Removed Unchanged 9 changes · 2 added · 5 modified · 2 removed Badge numbers show change count per node. Click any node to jump to detail in the change panel → Changes · 9 total v0.148.0 → v0.150.0 All (9) + Added ~ Modified − Removed Invoice Receipt Task added · new entry point + added Approve Payment ← selected 2 attrs changed · threshold, dual-sign Click diagram node to highlight ~ modified 3-Way Match 3 attrs changed · timeout, assignee, escalation ~ modified Post to GL Task removed · merged into Archive step − removed Exception Handler Task added · new exception path from gateway + added + 4 more changes ↓ SELECTED NODE DETAIL Approve Payment 2 attributes modified in v0.150.0 VIEW FULL DIFF →

Final design — Overlay Comparison Mode with change-coded nodes and contextual change panel. Selected node (Approve Payment) highlighted in orange.

CHANGE DETAIL VIEW Expanded diff for a selected node — Approve Payment DIAGRAM CONTEXT Invoice 3-Way Approve Payment ← selected NODE INFO Type: Task Status: Modified (v0.150.0) Position: Step 4 of 6 Changes: 2 attributes ↑ Approval threshold · Dual-sign rule Approve Payment · Attribute Diff v0.148.0 (removed) v0.150.0 (added) APPROVAL_THRESHOLD € 10,000 € 5,000 Threshold lowered — more invoices will now require approval DUAL_SIGN_REQUIRED false true Dual sign-off now required for approvals over new threshold 4 unchanged attributes ↓ expand NAVIGATE CHANGES ← Prev change Next change → Change 2 of 9 REVIEW ACTION ✓ Accept change ✕ Flag for review Add a comment… Save

Change detail view — expanded attribute diff for a selected node, with review action and navigation to the next change

View interactive prototype

Walk through the full comparison flow in Figma

Open in Figma →

Clarity at scale

35%

Faster comparison time

4.5 min → ~3 min per review

92%

Task success rate

Usability testing

Fewer change detection errors

Foundation for AI-assisted comparison

Enterprise users want clarity, not features

This project reminded me that enterprise users don't want more features — they want clarity. When workflows are complex, even small design decisions can make a big difference in reducing mental effort. Preserving spatial context, showing only what's needed, and letting users dive deeper when they choose — these principles drove every decision.

Working closely with analysts, engineers, and the design systems team helped me shape a solution that feels simple, even though the underlying problem was deeply complex. Knowing which Fiori components to use — and how to configure them correctly for this context — was as important as the interaction design itself. Good enterprise design is about removing friction, not adding layers.

← Previous Project

PVA Governance Experience

Back to Work

E-commerce · DEPT Agency · Diageo · 2023

Ecommerce PDP Redesign

Transforming a fragmented, inconsistent product page ecosystem into a scalable, premium, systems-driven experience across Diageo's global portfolio of 200+ spirits brands.

Role

Lead UX Designer

Timeline

6 weeks

Key Impact

50% less custom dev

Team

BA · Engineering · QA

shop.diageo.com/products/johnnie-walker-black-label JOHNNIE WALKER BLACK LABEL 12 Year Old 🥃 🥃 📦 🎁 ⤢ Zoom DIAGEO · BLENDED SCOTCH WHISKY Johnnie Walker Black Label 12 Year Old ★★★★★ 4.8 · 2,847 reviews €42.99 40% ABV 70cl · 100cl Smoky Vanilla Oak Caramel 1 + ADD TO BAG FIND A STORE 🚚 Free delivery over €60 ↩ Easy returns 🔒 Secure checkout AWARDS ⭐ IWSC Gold 2023 🏅 ISC Double Gold 🥇 WWA Best Blend Honeycomb Components Used ProductHero Title, breadcrumb, brand tag, image gallery RatingDisplay Star rating, review count, score badge PriceBlock Price, ABV, size selector, tax note FlavourTags Pill chips — dynamic from product data CTAGroup Add to bag (primary), Find a store (secondary) TrustStrip Delivery, returns, payment icons AwardsBadges Dynamic award pills — CMS-driven 6 components · all from Honeycomb →

200+ brands, zero consistency

Diageo's global portfolio spans 200+ premium spirits brands — yet their product detail pages (PDPs) were fragmented, inconsistent, and difficult to scale. Each market had evolved its own templates, creating a maintenance nightmare and diluting the premium brand experience.

As the UX designer for this initiative at DEPT Agency, I led the redesign of a unified PDP framework working within Diageo's Honeycomb design system — ensuring every design decision aligned with the existing token library and component architecture, and scaled consistently across all markets.

12 templates, 7 CTA styles, 40% bounce rate

  • Inconsistent layouts that diluted brand value — each market looked different
  • 7+ CTA styles creating a broken, unpredictable interaction model
  • Accessibility failures across the board — below WCAG 2.1 AA
  • Mobile responsiveness issues contributing to a 40% bounce rate
  • 12 different PDP templates making scaling to new brands nearly impossible
PDP AUDIT 4 markets · 4 completely different product page experiences 🇬🇧 UK Market 🥃 Johnnie Walker Black £38.00 ★★★★★ 2.1k Buy Now Tasting notes section 7 CTA variants used No mobile breakpoint 🇮🇪 Ireland Market 🥃 Johnnie Walker — Black 12yr €42.99 40% vol · 70cl ADD TO CART Image-first layout No awards or flavour data 🇺🇸 US Market JOHNNIE WALKER Black Label 750ml · $29.99 🥃 Shop Now → Completely different layout Blue CTA — off-brand 🇦🇺 Australia Market 🥃 Johnnie Walker Black Label AU$65.00 ★★★★☆ 847 reviews + Add Wishlist Pill CTAs only Missing flavour / ABV data

PDP audit across 4 markets — 12 templates, 7 CTA button styles, inconsistent information hierarchy, no shared design language

One system, every brand

Unified, scalable framework

A single PDP template aligned with Honeycomb that works for any brand in the portfolio — from Johnnie Walker to Tanqueray.

Clear visual hierarchy

Product metadata and CTAs front and centre. No hunting for the "buy" button or key product information.

Cross-platform seamlessness

A mobile-first approach that eliminates the responsiveness issues driving the 40% bounce rate.

Honeycomb-aligned components

Selecting and configuring existing Honeycomb components — rather than creating custom ones — to reduce design-to-development time and maintain system integrity across all brands.

What users actually care about on a PDP

I conducted a Baymard-based heuristic evaluation of the existing PDPs and analysed session recordings and analytics to identify the most common drop-off points. Combined with competitive benchmarking across premium drinks and luxury e-commerce, this shaped the content hierarchy.

RESEARCH INSIGHTS Baymard heuristics + analytics · Page scroll drop-off map BAYMARD HEURISTIC EVALUATION · 5 FINDINGS No sticky CTA on scroll Users lose the buy button after 2 scrolls — critical purchase blocker Critical Tasting notes buried below the fold Core purchase decision signal hidden at scroll depth 3+ High Image gallery too small on mobile Product image viewport under 200px on iPhone SE — trust issue High No quantity selector visible on load Qty control only appears post-add — friction for bulk buyers Medium ABV / volume info not scannable Key specs (40% · 70cl) buried in product description prose Medium SESSION RECORDING ANALYSIS · SCROLL DEPTH DROP-OFF 100% 75% 50% 25% 0% Above fold 100% Gallery 82% Price/CTA 68% Tasting notes 38% ↓ 40% drop Reviews 22% Key finding: 40% of users exit before reaching tasting notes — must move higher in hierarchy CTA scroll-away and buried flavour info are the two biggest conversion barriers

Research synthesis — Baymard heuristic evaluation findings (left) and session recording scroll depth analysis (right)

Mapping the path from discovery to purchase

I mapped three core user flows — direct landing, search-led, and recommendation-driven — to understand where the PDP fits in the broader journey and what information each type of visitor needs first.

USER FLOWS Three entry paths to the PDP — different needs, one destination FLOW A — DIRECT / BRAND NAVIGATION Brand site / DTC Category page PDP Product page Needs: brand story, premium feel, tasting notes first FLOW B — SEARCH-LED (Google / Retailer search) Google search "JW Black price" Search results Multiple tabs open PDP Product page Price compare May bounce Needs: price, specs, availability fast — don't bury in scroll FLOW C — RECOMMENDATION (Email / Social / Gift guide) Gift guide / Email High intent PDP Product page direct link Add to bag High conversion

Three entry paths — Direct/brand (needs story first), Search-led (needs price/specs fast), and Recommendation (high intent, needs smooth conversion)

Wireframes: testing structure before style

Low-fidelity wireframes allowed rapid validation of information priority, content balance, CTA placement, and modularity before any visual design decisions were made.

  • Priority of product information vs brand storytelling
  • Readability of long-form tasting notes and product history
  • Balance between hero imagery and descriptive text
  • CTA placement tested at 3 different scroll depths
  • Modular section order for scalability across SKU types
WIREFRAME EXPLORATION 3 PDP layouts tested · CTA placement · content hierarchy Layout A — Image Left / Text Right IMG Title H1 ★★★★★ €42.99 ADD TO BAG ✕ CTA below fold on mobile · price lost Rejected after stakeholder review Layout B — Hero Image + Sticky CTA ✓ SELECTED 🥃 Johnnie Walker Black Label ADD TO BAG · €42.99 ✓ CTA always visible · price in button · mobile-first Layout C — Text-first / Image gallery below Johnnie Walker Black Label ADD TO BAG Image gallery below fold ✕ Images below fold — biggest trust signal missing at first glance. Rejected after testing. Session recordings showed immediate back-navigation

Wireframe explorations — Layout B (hero image + sticky CTA) selected for keeping price and add-to-bag always visible on any device

Working within Honeycomb

Rather than building components from scratch, every design decision was made within the constraints and affordances of Honeycomb — Diageo's existing design system. This meant working with established tokens for spacing, border radius, colour, and interaction states, and selecting the right existing components rather than creating new ones. The result: zero design system debt, consistent output across all brands, and an engineering handoff that needed no custom work.

HONEYCOMB DESIGN SYSTEM Tokens · typography scale · colour palette · interaction states COLOUR TOKENS Ink #1A1714 Brand #C4601A Surface #F5F2EC Heading #3D3830 Muted #7A7268 Success #1A7A3C Error #B81A1A TYPOGRAPHY SCALE Johnnie Walker Black H1 · 20px · weight 400 · product name Tasting Notes H2 · 14px · weight 500 · section headers Smooth with notes of vanilla and oak Body · 11px · weight 300 · descriptions 40% ABV · 70cl · Blended Scotch Whisky Meta · 9px · weight 300 · specs / labels SMOKY · VANILLA · OAK Label · 7.5px · weight 600 · uppercase tags SPACING TOKENS · 8px base unit 4px 8px 12px 16px 24px 32px BORDER RADIUS 0px sharp 3px cards full pill All tokens verified WCAG 2.1 AA · min contrast 4.5:1 · tested in Stark

Honeycomb design system — colour tokens, typography scale, and spacing system applied to the PDP. All values sourced directly from the existing Honeycomb library

Typography

  • Confident H1 for product titles — brand presence, immediate recognition
  • Clear section headers that create scannable structure
  • High-contrast body text meeting WCAG 2.1 AA
  • Structured metadata styles for ABV, region, bottle size
GRID SYSTEM 12-column · 24px gutter · 8px base unit · max-width 1280px 1 2 3 4 5 6 7 8 9 10 11 12 Product image · 5 cols Product info + CTA · 7 cols 12px gutter Section padding: 48px top/bottom Component gap: 24px Text line-height: 1.7 Mobile breakpoint: 375px (4-col) Tablet: 8-col ✓ WCAG 2.1 AA spacing ratios maintained at all breakpoints

12-column grid — 5 cols for product image, 7 cols for info + CTA. 12px gutter, 48px section padding, 8px base spacing unit

Reusable component library

Primary CTA button
Quantity selector
Rating & review block
Feature cards
Flavour profile list
Awards badges

Premium, structured, scalable

The final PDP delivers a cohesive experience across all 200+ brands: immediate access to key product metadata, rich storytelling through tasting notes, history, and awards, a frictionless mobile layout, and a modular structure that engineers can configure per SKU without custom work.

diageo.com/uk/products/johnnie-walker-black-label DIAGEO Whisky Gin Vodka Rum Liqueurs SHOP Home / Whisky / Blended Scotch / Johnnie Walker Black Label JOHNNIE WALKER BLACK LABEL 12 YEAR OLD 🥃 Serve Awards Glass JOHNNIE WALKER Black Label 12 Year Old Blended Scotch Whisky ★★★★★ 4.8 · 2,847 reviews 🏆 Gold 2023 🏅 IWSC 94pts 40% ABV 70cl Scotland Matured 12 yrs TASTING NOTES Smoky Vanilla Oak Spice Caramel €42.99 incl. VAT · Free delivery over €60 1 + ADD TO BAG ♡ Save ✓ In stock · Dispatches within 24 hours 🔒 Secure checkout · Age verification required HONEYCOMB COMPONENTS USED ON THIS VIEW ProductHero · RatingBlock · AwardsBadge · FlavourTag · QuantitySelector · CTAButton · DeliveryInfo All 7 components configured via CMS — no custom dev required per brand

Final PDP design — premium desktop layout with hero image, tasting notes, awards, sticky add-to-bag, and all 7 Honeycomb components correctly applied

COMPONENT LIBRARY · MOBILE VIEW 6 reusable components · CMS-configurable · scales to any brand JOHNNIE WALKER Black Label 12yr ★★★★★ 4.8 (2.8k) Smoky Vanilla Oak €42.99 ADD TO BAG · €42.99 ProductHero Hero image · brand label · product name H1 Props: imageUrl · brandName · productName Shared CMS RatingBlock Star rating · review count · review link Props: score · count · href Shared AwardsBadge Competition · year · score · medal level Composable — supports 1–6 awards per product FlavourTag Pill tag for tasting notes — label + optional icon Max 6 visible; overflow collapses to "+N more" QuantitySelector − [count] + with min/max/step constraints Accessible: keyboard operable · ARIA labelled WCAG CTAButton (sticky) Full-width on mobile · inline price display Sticky scroll · 44px touch target · contrast 7:1 WCAG All 6 components are brand-agnostic — swap tokens to apply to any Diageo brand in minutes, no custom dev Tested on Johnnie Walker, Tanqueray, Baileys, and Guinness — consistent output across all four

Component mapping — 6 Honeycomb components selected and configured for the PDP, with mobile-first layout. Sticky CTA always visible; all components sourced from the existing Honeycomb library

View interactive prototype

Explore the final PDP experience — all components sourced from the Honeycomb design system

Open Figma prototype →

One system, measurable results

85%

Cross-brand consistency score

Unified experience across global markets

50%

Reduction in custom UI development

Design-to-dev cycle time cut in half

1→∞

Template to rule them all

Scales to any brand without custom work

The power of UX systems thinking

This project sharpened my understanding of what it means to design within a mature design system rather than alongside one. Working within Honeycomb's constraints was a design exercise in itself — understanding which components served each use case, how to adapt them without breaking system integrity, and when to flag a genuine gap to the design systems team rather than improvising a workaround.

The key learning: working within an existing system is not a constraint on creativity — it's what allows creativity to scale. Every brand that comes onboard now has a faster path to market, and the product is more consistent and trustworthy as a result.

← Previous Project

Overlay Comparison Experience

Back to Work

Open Source · UX Lead · OpenTelemetry · CNCF · 2026

OpenTelemetry v1 Discovery Engine

Designing the UX strategy for a first-ever discovery tool covering 1,000+ observability components — balancing two opposing developer personas, eliminating search ambiguity, and building a WCAG 2.1 AA accessible stability badge system from the ground up.

Role

Senior Lead UX Designer (Volunteer)

Organisation

OpenTelemetry · CNCF

Scope

4 screens · 24 findings · 18 recommendations

Team

International maintainers · Engineering · Community

OpenTelemetry Collector Instrumentation SDKs Search all ecosystems… OPENTELEMETRY ECOSYSTEM EXPLORER · v1 REDESIGN Discover. Evaluate. Deploy. 1,000+ components · 12 languages · Search-first + Browse-first Search all ecosystems — receivers, exporters, instrumentations… Search RECEIVERS kafkareceiver receiver · stable EXPORTERS otlpexporter exporter · stable Collector 200+ components Java SDK Coming soon Go SDK Coming soon BROWSE BY ECOSYSTEM Collector Components · 200+ Type: All Signal: Traces Stability: Beta NAME TYPE SIGNAL STABILITY kafkareceiver receiver traces · metrics ✓ stable prometheusreceiver receiver metrics β beta elasticsearchexporter exporter traces · logs α alpha jaegerexporter exporter traces ⊘ depr. Showing 42 of 200+ components Next →

1,000+ components. No good way to find them.

OpenTelemetry is the second most active CNCF project in the world — yet the developer experience for discovering its components was almost entirely undocumented and undesigned. Engineers evaluating OTel for their stack, operators upgrading existing deployments, and contributors building new integrations all shared the same entry point: a raw GitHub registry with no search, no filtering, and no context.

The v1 Ecosystem Explorer redesign (GitHub Issue #84) set out to fix this. I joined as Senior Lead UX Designer — volunteering with a team of international maintainers — to define the discovery UX strategy, conduct a full screen-by-screen audit of the v1 mockups, and design a WCAG 2.1 AA accessible stability badge system before the feature shipped behind a production flag.

BEFORE STATE GitHub registry — the only way to discover OTel components before the Explorer ⭐ Star 4.2k open-telemetry / opentelemetry-collector-contrib receiver · exporter · processor 📁 receiver (98 folders) 📂 kafkareceiver 📂 prometheusreceiver 📂 hostmetricsreceiver 📂 awscloudwatchreceiver 📂 googlecloudpubsubreceiver 📂 elasticsearchreceiver ... 91 more folders 📁 exporter (76) 📁 processor (42) README.md — kafkareceiver # Kafka Receiver ## Supported Pipeline Types ⚠ No stability label · No signal type filter · No version comparison · No search

The before state — engineers navigating 98+ receiver folders in a raw GitHub repository with no search, no stability signals, and no filtering capability

Three structural gaps threatening a well-designed foundation

The v1 mockups — four screens covering the Home page, Ecosystem Landing, Component List, and Component Detail — demonstrated strong information architecture and a clean visual language. But the audit surfaced three structural problems that would undermine the experience for the primary audience:

  • Search scope ambiguity: The global search bar and the nav search bar appeared simultaneously with identical placeholder text on the home page. Engineers couldn't tell which to use, what each searched, or whether they returned different results — on the single most important screen in the product.
  • Stability badge accessibility failures: All four stability badges — Stable, Beta, Alpha, Deprecated — relied on colour as the sole primary differentiator in the list view. This failed WCAG 1.4.1 for colour-blind users (affecting ~8% of male engineers) and provided no semantic meaning to assistive technology.
  • Missing failure states: None of the four screens showed an empty or error state. For a search-primary product, the no-results journey is equally important as the happy path — and it was completely undesigned.
SCREEN 01 — HOME PAGE · AUDIT FINDING Dual search bars — no scope differentiation (Critical) OpenTelemetry Search… OPENTELEMETRY ECOSYSTEM EXPLORER Discover. Evaluate. Deploy. Search all ecosystems… Search Nav search bar Same placeholder text. Which one do I use? Hero search bar — same text, different position ✕ No label: "Search all ecosystems" absent ✕ No type-ahead or preview of results ✕ No empty state designed for failed searches ✓ Recommended fix → Label hero: "Search all ecosystems" → Hide nav search on home page only → Add type-ahead grouped by category → Design no-results state with suggestions → "Did you mean kafkareceiver?" Severity: Critical · All personas

Screen 01 — Home page: dual-search ambiguity. Both bars have identical placeholder text with no scope label — engineers can't tell which to use or what each returns

Three users, three opposing search behaviours

Through analysis of the OTel community profile and the Explorer's stated purpose, I identified three distinct personas that needed to coexist in one interface — and whose needs frequently pulled in opposite directions:

OP

Omar · Platform Engineer

6 yrs OTel · Upgrading Collector v0.148→v0.150

Needs to find a specific component by name, compare config keys across versions, and confirm stability before recommending an upgrade. Blocked by: hidden version diffing, no changelog summary, unclear search scope.

PL

Priya · Library Developer

OSS contributor · 2 yrs OTel · Building Java instrumentation

Wants to browse existing instrumentations for a framework, filter by signal type to find gaps, and understand the difference between alpha and beta. Blocked by: badge meaning unexplained, no cross-ecosystem search, no contributor guide link.

DT

Dev · Technical Architect

OTel newcomer · Enterprise · Evaluating stack coverage

Needs to understand what OTel covers at a glance (Kafka, Postgres, custom HTTP), search for specific technologies, and evaluate component maturity. Blocked by: no jargon glossary, unclear ecosystem entry, opaque stability meaning.

SR

Screen reader user

Any role · NVDA / VoiceOver · Keyboard-only navigation

Stability badges announce as plain text with no context. Filter sidebar toggle states not announced. Pipeline anatomy diagram has no text equivalent. Every one of these is a WCAG 2.1 AA failure.

The tension between Omar (search-first, expert) and Dev (browse-first, newcomer) defined every structural decision — from how the home page search is labelled to how stability badges communicate risk.

PERSONA TENSION MAP · THREE USERS · ONE INTERFACE · EVERY DECISION NAVIGATES THIS AXIS OP Omar Platform Engineer 6 yrs OTel · Upgrading Collector SEARCH-FIRST NEEDS → Name-exact search, instant results → Version diff in 2 clicks → Stability signal he trusts blindly → URL-shareable filter state Zero tolerance for explanatory overhead PL Priya Library Developer OSS contributor · 2 yrs OTel FILTER-FIRST NEEDS → Filter by signal type to find gaps → Badge meaning explained clearly → Cross-ecosystem search support → Contributor guide link accessible Blocked when alpha/beta distinction is opaque DT Dev Technical Architect OTel newcomer · Evaluating stack BROWSE-FIRST NEEDS → Guided entry — ecosystem cards first → Jargon explained inline, not elsewhere → Stability meaning visible, not assumed → Confidence signals always prominent Zero tolerance for blank-slate ambiguity TENSION AXIS · WHERE EACH PERSONA SITS · WHERE EACH DESIGN DECISION LANDS Omar Expert · Speed Priya Bridge · Filter Dev Newcomer · Guide SEARCH SCOPE No label → Dev bounces "Search all ecosystems" BADGE MEANING No tooltip → Priya guesses Badge + tooltip on demand HOME ENTRY Search only → Dev lost Search bar + ecosystem cards VERSION COMPARE Hidden diff → Omar blocked "Compare versions ↔" CTA RESOLUTION PRINCIPLE · NEVER FORCE A CHOICE · DESIGN FOR ALL THREE SIMULTANEOUSLY Progressive disclosure Expert path: direct, fast, no labels. Novice path: same screen, context available on demand via tooltip. Single entry, three paths One home page for all three — search for Omar, ecosystem cards for Dev, filter sidebar for Priya. Tension as design driver Each tension became a specific decision — search label, badge tooltip, entry mode, compare CTA.

Persona tension map — Omar (search-first), Priya (filter-first), and Dev (browse-first) as equal cards, positioned on the tension axis, with four key decisions mapped to their resolution

Four screens. Twenty-four findings.

I conducted a structured UX audit of all four v1 mockup screens, mapping every finding to a severity level (Critical / High / Medium / Low) and a persona. The audit ran in parallel with a WCAG 2.1 AA compliance matrix — assessing eight criteria across all four screens.

6

Critical findings

8

High severity

7

Medium severity

3

Low / polish

SCREEN 03 — LIST PAGE · AUDIT FINDINGS Colour-only badges · no keyboard focus · no live filter count TYPE receiver (98) exporter (76) processor (42) SIGNAL traces (54) metrics (66) STABILITY stable (89) beta (72) alpha (28) deprecated (11) ✕ No live counts Counts don't update as filters are applied receiver ✕ traces ✕ ✕ No focus ring on dismiss ✕ buttons NAME TYPE STABILITY kafkareceiver receiver stable otlpreceiver receiver beta elasticsearchreceiver receiver alpha fluentforwardreceiver receiver deprecated ✕ Critical: colour is the only differentiator stable (green) = deprecated (red) in deuteranopia No icons · No aria-label · Fails WCAG 1.4.1 ✓ Fix: icon + text + aria-label + tooltip aria-label="Stability: Stable — no breaking changes" Add ✓ β α ⊘ icons · Fix contrast to 4.5:1+

Screen 03 — List page: three simultaneous issues — colour-only stability badges (Critical), no keyboard focus on filter chips (Critical), no live count during filter application (High)

Four journeys. Four failure modes. One fix each.

I mapped four critical search journeys against the v1 screens to identify exactly where users would fail and why. Each journey had a single structural root cause and a direct design intervention:

J1

Global search — no scope, no preview, no recovery

Engineers arriving at the home page had no way to know what the hero search would return. Fix: label it "Search all ecosystems", suppress the duplicate nav search bar on this screen, and add a type-ahead preview panel grouped by category (Receivers · Exporters · Instrumentations).

J2

Filtered browse — no feedback, no URL persistence

Applying multiple filters (Type: Receiver + Signal: Traces + Stability: Beta) gave no live count preview, couldn't be bookmarked, and had no undo path. Fix: live result counts on each filter option, URL-persisted filter state, and an undo toast for "Clear all".

J3

Cross-version diff — buried, mislabelled, inaccessible

The "Diff →" link on the detail page was the only path to the version comparison tool — but it was visually subtle, mislabelled, and required navigating to the detail page first. Fix: rename to "Compare versions ↔", surface as a CTA in search results and list rows, and make release stats on the Ecosystem Landing page deep-link to the diff view.

J4

Failed search — complete dead end

Typing "kafaka" (typo for Kafka) returned nothing. No fuzzy match, no "did you mean?", no distinction between "doesn't exist" and "filtered out". Fix: design a full empty state for each context, implement fuzzy search, and link to a "Request a component" GitHub issue template.

SEARCH JOURNEY ANALYSIS · ALL 4 JOURNEYS · FAILURE → FIX J1 · CRITICAL Global search — home page hero Persona: All three · Screen: 01 User types in hero bar ✕ No scope · no preview · nav bar duplicates it Dead end / confusion → Label: "Search all ecosystems" → Hide nav search on home page only → Type-ahead: Receivers (3) · Exporters (1) J2 · HIGH Filtered browse — list page Persona: Omar, Priya · Screen: 03 Applies Type + Signal + Stability filters ✕ No live count · no URL state · no undo Over-filters to 0 results, no recovery → Live count: "Beta (89)" updates live → Filter state in URL params → Undo toast: "Filters cleared. Undo?" J3 · HIGH Cross-version diff — component detail Persona: Omar · Screen: 04 Wants to diff v0.148 → v0.150 ✕ "Diff →" subtle · wrong default version range Must navigate to detail page first; link invisible → Rename to "Compare versions ↔" → Surface CTA in list rows and search results → Release stats deep-link to diff view J4 · MEDIUM Failed search — no-results recovery Persona: Dev · Screens: 01, 03 Types "kafaka" (typo) → zero results ✕ No suggestion · no cause explanation · dead end No path back; no "request a component" option → "Did you mean: kafkareceiver?" → Fuzzy match (Fuse.js) + scope broadening → Link to GitHub "Request a component" template JOURNEY + SEVERITY FAILURE MODE DESIGN FIX

Four search journeys mapped to failure mode and direct intervention — each connecting to the persona it blocks and the screen it lives on

All four badges failing. None unfixable.

The stability badges — the single most important trust signal for every developer using the Explorer — were failing on multiple WCAG criteria simultaneously. I ran a detailed audit of each badge against four criteria and designed a complete remediation system.

✓ stable Stable 2/4 pass

✕ No aria-label — announces as "stable" with no context

✕ Green (#1D9E75) on white: ratio ~3.8:1 — fails 4.5:1 AA

✕ No tooltip or link to stability definition

β beta Beta 2/4 pass

✕ No aria-label explaining breaking-change risk

✕ No tooltip: "beta = breaking changes possible" not communicated

✕ Blue hue carries no unique meaning in protanopia

α alpha Alpha 1/4 pass

✕ Contrast ratio ~2.9:1 — fails AA for all text sizes

✕ Amber/orange confused with deprecated in deuteranopia

✕ Most critical badge for risk communication — least accessible

⊘ deprecated Deprecated 1/4 pass

✕ Red (#721c24) on #f8d7da: ratio ~4.1:1 — just below AA threshold

✕ Red/green (stable) confused in ~8% of male users

✕ No shape/icon distinction — colour + text only

STABILITY BADGE REDESIGN · OPENTELEMETRY ECOSYSTEM EXPLORER BEFORE — colour + text only, no icon, no ARIA AFTER — icon + text + contrast fix + ARIA label stable ✕ no icon · contrast 3.8:1 · no aria-label Screen reader: announces "stable" — no context beta ✕ no icon · breaking-change risk not communicated Protanopia: indistinguishable from stable alpha ✕ worst failure — contrast 2.9:1, fails all text sizes Deuteranopia: confused with deprecated deprecated ✕ contrast 4.1:1 — just below AA · red/green fail No icon — can't distinguish from stable in cvd ✓ stable 5.2:1 ✓ · icon ✓ · aria: "Stable — no breaking changes" #135c32 on #E4F2EA · verified in Stark β beta 6.1:1 ✓ · icon ✓ · aria: "Beta — breaking changes possible" #0F3E80 on #E4ECF5 · unique hue across all cvd types α alpha 4.7:1 ✓ (was 2.9) · icon ✓ · aria: "Alpha — API may change" #5c4400 on #FFF8E8 · contrast corrected by +1.8 ratio ⊘ deprecated 4.6:1 ✓ (was 4.1) · icon ✓ · aria: "Deprecated — do not use" #5a1619 on #FFF0F2 · ⊘ icon distinguishable from ✓ in all cvd BADGE ANATOMY · EVERY ELEMENT SERVES A PURPOSE ✓ stable Unique icon ✓ β α ⊘ per level Text label Colour + visible border Never the sole signal ARIA LABEL · screen reader output aria-label="Stability: Stable — no breaking changes between releases" TOOLTIP · on hover + keyboard focus "Stable — this component will not introduce breaking changes. See the OTel stability policy →" COLOUR-BLINDNESS SIMULATION · WHY ICONS ARE NON-NEGOTIABLE Standard vision stable deprecated Clearly different ✓ Deuteranopia (8% of males) stable deprecated Look identical — critical failure ✕ After fix — same deuteranopia simulation ✓ stable ⊘ deprecated Icons ✓/⊘ still distinguishable ✓ CONTRAST RATIOS · BEFORE → AFTER Stable 3.8:1 ✕ 5.2:1 ✓ Beta 3.9:1 ✕ 6.1:1 ✓ Alpha 2.9:1 ✕✕ 4.7:1 ✓ Deprecated 4.1:1 ✕ 4.6:1 ✓ 4.5:1 AA min Before — fails AA After — passes AA Verified with Stark plugin in Figma before dev handoff

Badge redesign — (1) before/after comparison with ARIA label copy per level, (2) badge anatomy with annotated elements and tooltip spec, (3) colour-blindness simulation showing why icons are required, (4) contrast ratio improvements across all four stability levels

18 recommendations across five principles

The full audit produced 18 recommendations, organised into a priority matrix (do now / plan / defer) and grouped under five design principles that drove every decision:

Clarity before discoverability

Search must tell users what it searches before they type. Label scope, show previews, design for failure — not just the happy path.

Meaning beyond colour

Every stability badge must communicate its meaning through icon, text, contrast, and ARIA — never through colour alone.

Context at every step

Engineers should never have to leave the Explorer to understand what something means. Tooltips, glossaries, and inline definitions reduce dependency on external docs.

Progressive disclosure

Summary first, detail on demand. The newcomer (Dev) and the expert (Omar) are on the same screen — design for both without overwhelming either.

Persistent state

Filtered views, version contexts, and search results should live in the URL so engineers can bookmark, share, and navigate without losing work.

Semantic structure first

Every visual element — pipeline diagrams, filter states, badge selections — must have a text equivalent and ARIA semantics before any visual polish is applied.

PRIORITY MATRIX 18 recommendations · Impact (vertical) × Implementation effort (horizontal) ← LOWER EFFORT · · · · · · HIGHER EFFORT → ← LOWER IMPACT · · · HIGHER IMPACT → DO NOW — High impact, low effort → Add aria-label with full definition to all four stability badges → Fix contrast: alpha #5c4400, deprecated #5a1619 → Add unique icon to each badge (✓ β α ⊘) → Label hero search "Search all ecosystems" → Hide nav search on Home · Add ARIA states to view toggle → Add visible focus rings to all interactive elements PLAN — High impact, higher effort → Design no-results / empty state for all search entry points → Add text alt for pipeline anatomy diagram (Screen 02) → Show live result count during filter interaction → Persist filter state in URL params → Rename "Diff →" to "Compare versions ↔" → Add stability badge legend sidebar widget DELEGATE — Lower impact, low effort → Make hero stats clickable (deep-link to filtered views) → Visually distinguish "Coming soon" ecosystem cards → Soften hero/content hard edge — visual transition → Clarify "Filter by name" scope label → Add "What do these mean?" link to sidebar DEFER — Lower impact, higher effort → "My current version" context preference per user → Fuzzy search / typo correction (Fuse.js) → Signal taxonomy glossary tooltips → "What changed?" badge in list view (last 30 days) → "Request a component" issue template link 18

Priority matrix — 18 recommendations across four quadrants. 7 "Do Now" items are actionable before Phase 2 ships; 6 "Plan" items are scoped for Phases 3–4

What was produced and handed to the team

1

Full UX audit report (Issue #84)

Screen-by-screen findings across all four v1 mockups — 24 findings, severity-rated, each tied to a persona and a WCAG criterion where relevant. Delivered as a structured HTML document shared with the maintainer team on GitHub.

2

WCAG 2.1 AA compliance matrix

Eight criteria assessed across all four screens with Pass / Partial / Fail ratings. Gave the engineering team a clear, criterion-level picture of what needed to ship before the feature went live behind the production flag.

3

Stability badge redesign specification

Five specific recommendations (R-B1 through R-B5) covering icon addition, ARIA label copy, contrast corrections with exact target hex values, tooltip/popover content, and a global badge legend component for the list page sidebar.

4

Search journey maps (J1–J4)

Four journeys mapped to specific screens with issues, root causes, and direct design fixes. Each journey connected to the persona it affected, making prioritisation conversations with the team concrete rather than abstract.

5

Async design-to-code specifications

Detailed handoff notes written for an international async team — covering component behaviour, ARIA implementation, contrast values, and edge cases. Managed across a 5-phase roadmap with implementation gated behind the production feature flag.

WCAG 2.1 AA COMPLIANCE MATRIX · 8 CRITERIA · 4 SCREENS CRITERION DESCRIPTION S01 S02 S03 S04 1.1.1 Non-text content has text alternative Partial Fail Partial Partial 1.3.1 Info and relationships conveyed through structure Partial Fail Partial Partial 1.4.1 Colour not used as sole means of conveying information Fail Pass Fail Fail 1.4.3 Text contrast ≥ 4.5:1 (normal), 3:1 (large) Pass Pass Fail Partial 2.1.1 All functionality available via keyboard Partial Partial Fail Partial 2.4.7 Focus visible — keyboard focus indicator present Partial Partial Fail Fail 3.2.2 On input — changing setting does not auto-navigate Pass Pass Partial Pass 4.1.2 Name, role, value — UI components have accessible names Partial Partial Fail Fail Pass — no issues visible in mockup Partial — likely passes with correct implementation Fail — clear evidence of issue from mockup

WCAG 2.1 AA compliance matrix — 8 criteria assessed across all 4 screens. Screen 03 (List) and Screen 04 (Detail) carry the most failures; Screen 02 (Ecosystem Landing) has the single Critical failure on 1.1.1

5-PHASE ASYNC ROADMAP · FEATURE FLAG GATED · INTERNATIONAL TEAM Phase 1 UX Audit All 4 screens 24 findings WCAG matrix Issue #84 ✓ Complete Phase 2 Badge System Icon specs R-B1 ARIA labels R-B2 Contrast fixes R-B3 Tooltip R-B4 ✓ In review Phase 3 Search UX Hero label + scope Type-ahead preview Empty state design Nav search logic Upcoming Phase 4 Filters + Versions Live filter counts URL filter state Compare versions CTA Pipeline text alt Planned Phase 5 Discovery Engine v2 Fuzzy search Signal glossary "What changed?" badges Version context prefs Future scope

5-phase async roadmap — Phases 1–2 complete, Phases 3–5 spec'd and handed to the engineering team. All work gated behind a production feature flag to allow safe async iteration with international maintainers.

SCREEN 04 — COMPONENT DETAIL Kafka Receiver · audit findings: badge tooltip + diff discoverability OpenTelemetry Collector / Receivers / kafkareceiver kafkareceiver β beta ✕ No tooltip — "breaking changes possible" not communicated anywhere on page receiver · v0.150.0 · traces · metrics · logs Receives data from Apache Kafka topics into the pipeline. Configuration README Emitted attributes Examples receivers: kafka: brokers: - localhost:9092 topic: otlp_spans encoding: otlp_proto group_id: otel-collector VERSION HISTORY v0.150.0 Current · May 2026 v0.149.0 Apr 2026 v0.148.0 Diff → ✕ "Diff →" too subtle Fix: "Compare versions ↔" WHERE THIS FITS kafka batch otlp ✕ Pipeline diagram has no text alternative Screen reader: no pipeline context. WCAG 1.3.1 ✓ Fix: Add role="tablist" · aria-selected on active tab · visible focus ring on all tab items Also: "Compare versions ↔" CTA in header · pipeline aria-label describing stage order

Screen 04 — Component detail (Kafka Receiver): beta badge has no tooltip, "Diff →" is too subtle for Omar's primary task, tabs lack ARIA states, pipeline has no text alternative

SCREEN 02 — ECOSYSTEM LANDING OpenTelemetry Collector · pipeline anatomy + release panel OPENTELEMETRY Collector Vendor-agnostic · 200+ components · v0.150.0 v0.150.0 LATEST RELEASE +4 added ~12 changed −2 deprecated ✕ Stats not linked to diff view Omar can't reach diff from here PIPELINE ANATOMY · Click any stage to filter components RECEIVERS 98 PROCESSORS 42 EXPORTERS 76 ✕ Critical (WCAG 1.1.1 / 1.3.1): Pipeline is purely visual — no text equivalent for screen readers Fix: aria-label="A Collector pipeline flows from Receivers (98) through Processors (42) to Exporters (76)" ✕ "Click any stage to filter" only visible on desktop hover — not communicated on mobile RECENTLY UPDATED · v0.150.0 kafkareceiver β beta otlpexporter ✓ stable jaegerexporter ⊘ depr.

Screen 02 — Ecosystem landing: pipeline anatomy is visual-only with no text alternative (Critical · WCAG 1.1.1), release stats not linked to the diff view, click affordance hidden on mobile

What changed — and what it unlocks

24

Findings documented before feature shipped

Preventing post-launch accessibility debt

18

Actionable recommendations delivered

Mapped by effort, impact, and persona

8

WCAG criteria assessed across 4 screens

Criterion-level pass/fail for engineering

The badge redesign specification — five recommendations covering icons, ARIA labels, contrast corrections, tooltips, and a legend component — gives the OTel maintainer team a clear, implementable path to WCAG 2.1 AA compliance for the stability system before v1 ships publicly. The search journey analysis established a shared vocabulary for discussing discovery UX in async GitHub conversations across a globally distributed team.

Designing without authority, for a community of thousands

Open source UX is a different kind of design challenge. There is no product manager to escalate to, no sprint commitment to force a decision, and the "users" are engineers who will read your spec, disagree with parts of it, and improve it — publicly. You earn influence through the quality of your thinking, not your title.

The biggest lesson from this project was that accessibility is a product quality argument, not a compliance argument. Framing every badge fix as "this helps all three of your primary personas, not just screen reader users" made the recommendations land differently in async async discussions than a simple WCAG citation would have.

Working across time zones, in a community where decisions happen in GitHub comments and async Slack threads, strengthened my ability to write design rationale that can stand on its own — without a meeting to support it.

← Previous Project

Ecommerce PDP Redesign