Sergey Berezyuk Cases · Contact

Omnichannel Communication Center

Unified 30+ fragmented modules into coherent call center experience through research and design system

Omnichannel Communication Center
Client
  • NDA
Date, duration
2020–2021, 14 months
Team
  • Business Analyst
  • UX Designer, x2
  • Front-End Developer, x3
  • Project Manager
  • Delivery Manager
My role
  • UI Designer
  • UX Researcher
  • Interaction Designer
  • Design System Specialist

Business challenge

Dive was a modular call-center platform used by banks, insurers, and utility providers across Central Europe. It had been in production since 2018 and grown to more than 30 modules, but customers struggled with steep onboarding, fragmented workflows, and an outdated interface. Just to create one ticket, agents often had to dig through hidden settings, change their status by hand, and jump between several screens.

New agents took months to get productive, which slowed the whole team. Support was buried in UI-related tickets, and supervisors had little visibility into performance and SLAs. Our goal was to help agents finish tasks faster, cut UI support tickets, and give managers real-time insight into the team.

If we strip the product down to what people actually use and give them a guided, consistent experience, we'll dramatically cut onboarding friction and boost productivity.

— M., Product Manager, Client

Understanding the User

Research approach

I ran a mixed-methods study: a survey of 139 agents and admins, 9 in-depth interviews, and 4 journey-mapping workshops. The goal was simple: find where the system slows people down and what they actually need day to day.

Key user groups

Petar
Petar Agent
80% of users
30 y.o., 2 years of experience
Goal
Solve customer problems quickly without system friction
Key Pain
Too many fields, I don't know what is important
Ana
Ana Supervisor
20% of users
25 y.o., 4 years of experience
Goal
Configure system and monitor team efficiently
Key Pain
I do not understand the system logic
See the detailed persona

Top insights from research

Too much jumping between screens
Agents have to switch between 5+ modules for one task
Hard to learn without help
After months I noticed the copy option — feature discovery fail
Manual work everywhere
Agents manually enter data the system already has
No real-time visibility
Supervisors can't see who needs help NOW

User journey maps

We mapped 4 critical workflows to find friction points and opportunities.

1. Inbound Communication Flow

Petar, Agent: From receiving call to closing ticket
Main problems
  • Agent forgets to change status manually
  • No customer context when the call arrives
  • Must search across 5+ screens during an active call
What we can improve
  • Auto-update agent status based on activity
  • Show unified customer view with history, open tickets, and recent communication
  • Add a contextual knowledge base inside the call interface

2. Supervision and System Management

Ana, Admin: From initial setup to performance analysis
Main problems
  • Settings scattered across modules without clear connections
  • Cannot see which agents need help in real-time
  • Must wait for vendor support for basic changes
What we can improve
  • Create unified configuration hub where all related settings live together
  • Build real-time monitoring dashboard with alerts
  • Add templates and cloning for quick setup

3. Ticket Management

Petar, Agent: From ticket creation to resolution
Main problems
  • Not sure which fields are required vs optional
  • Have to manually enter data that's already in the communication
  • Afraid of missing critical information
What we can improve
  • Auto-populate ticket fields from communication context
  • Add smart categorization based on conversation content
  • Show completion checklist so agents know they're done

4. Agent Help Request and Supervisor Response

Petar and Ana: From problem recognition to resolution with learning
Main problems
  • No integrated 'Request Help' button in the interface
  • Supervisor doesn't see the request in real-time
  • Agent has to explain the context all over again
What we can improve
  • Add contextual help button that shares current screen and ticket info
  • Send priority alerts to supervisors when agents need help
  • Enable shared view mode so supervisor sees what agent sees

See the full inbound journey map

Voice of users

Petar, Agent

"When first I saw these fields, that was like: what I am going to do? It takes time for me to fill in all these fields. My main job is to help clients."

Main conflict
Petar wants to help customers quickly, but the system is too complex and slows him down
He needs clear guidance, but the interface does not explain what to do next
Fears supervisor will judge delays

Ana, Supervisor

"There are some parts that could be easier to understand. It is not user friendly. Sometimes we do not understand what possibly means what."

Main conflict
The system covers almost all needs, but it still takes months to discover some basic features.
She wants to react to agents quickly, yet she has to switch between several programs all the time.
She would like to change settings on her own, but often has to wait for vendor support.

Affinity: pattern analysis

Research notes synthesized into 4 primary action clusters.

1. Too many screens and unclear structure

Users have to jump between modules to finish one task. Settings are scattered, and it's not obvious how modules depend on each other.

What we did
Grouped related functions by real user tasks, not by technical structure
Created a unified configuration hub where all related settings live together
Added short tooltips that explain what each setting affects
Reduced the number of clicks to key actions like ticket creation and status change

Result: 45% faster task completion.

2. Too much manual work

Agents have to re-enter data that already exists in the system. Admins recreate similar configurations again and again.

What we did
Built smart search with auto-fill from customer context
Added templates and cloning for configurations
Created completion checklist so agents know they're done
Enabled bulk operations for common admin tasks

3. Hard to learn without help

The system has lots of features, but new users take months to learn them. Even experienced users discover important features by accident.

What we did
Created step-by-step wizards for key tasks like first call and ticket creation
Added contextual tooltips that explain why each setting matters
Built searchable help center inside the app
Added discovery hints when users do things manually that could be automated

4. No real-time visibility

Agents can't see queue status or their own stats. Supervisors piece together the picture from different modules, which delays responses.

What we did
Built role-based dashboards: Agent Home shows my queue and tickets, Supervisor Home shows team KPIs and alerts
Added persistent status bar that shows agent availability and updates automatically
Created unified view that combines communication, ticket, and customer history on one screen
Implemented priority notifications for supervisors when agents need help or SLA is at risk

See the full affinity diagram with research notes

Our plan

Quick wins

0-6 months
Add tooltips and contextual help in key flows
Create guided flows for inbound calls and ticket creation
Redesign agent and supervisor dashboards with real-time data

Medium-term

6-12 months
Smart form auto-fill and status automation
Templates and cloning for complex configurations
Visualize connections between skills, tickets, and IVR

Long-term

12+ months
Explore predictive analytics for queues and staffing
Personalized training based on agent performance
Improve mobile access for supervisors

What happened

Next
We ran usability tests with agents and admins on prototypes that addressed the top pain points
Aligned with product and operations leaders on impact vs. feasibility
Started shipping in cycles, beginning with high-impact items like contextual help, quick-start flows, and unified dashboards
Established baselines for handle time, time-to-proficiency, configuration accuracy, and agent satisfaction

Design challenge

The main challenge was to unify the interface across 30+ modules without breaking existing integrations. We had to figure out which modules agents actually use every day, simplify onboarding, and build a design system that worked for the whole product family.

We also had to translate both the survey data and the journey maps into concrete UI patterns and roadmap items. The tricky part was designing for two very different audiences: agents who need fast, guided flows under time pressure, and admins who need full control and a clear view of how the system works.

Story

As the UI designer and researcher on the project, I turned the study into direction. It surfaced the 7 modules agents used most and the biggest points of friction in the existing workflow. Most users were young and tech-savvy and leaned on a handful of modules, but the UI still pushed them through needless theme tweaks, manual status changes, and disjointed ticket creation.

2021 101 1
Over 30 modules in total

I turned the findings into a clear product roadmap and prioritised the seven high-impact modules for the MVP. The components I built went into the shared React library, so they were reusable across the whole Dive suite.

2021 101 2 2021 101 3 2021 101 4 2021 101 5 2021 101 6 2021 101 7

Supervisors got a unified dashboard with real-time KPIs (average handling time, queue length, escalation count) and one-click drill-down to any agent or ticket. A notification engine pushes alerts for status changes, SLA breaches, and escalations, all configurable per role.

2021 101 8 2021 101 9 2021 101 10 2021 101 11 2021 101 12 2021 101 13 2021 101 14 2021 101 15 2021 101 16 2021 101 17

Close teamwork kept the design intent accurate in code and the design system adopted consistently.

Results *

290s
Average Handling Time
+26% faster
33s
Ticket creation
+20% tickets handled per shift
22d
Onboarding time
-28 days
55%
Less UI support tickets
100/month → ~45/month

* All since 2019.

Grounding priorities in real user data and building a clear, component-based interface turned Dive from a tangle of modules into a focused call-center tool. The gains in onboarding time, support load, and management visibility add up to more productive agents and lower costs for Dive's clients.


Appendix

Research methodology

  • 9 in-depth interviews (6 agents, 3 admins)
  • 139 survey responses
  • 4 journey-mapping workshops

Group of personas

Call Center Agents

The main user group is frontline call center agents who handle incoming and outgoing customer communication. They work both remotely and from offices in Croatia and make up about 80% of all users. Their daily tasks include answering customer questions, creating and updating tickets and using multiple channels such as phone, email and chat. Most agents have higher education, 1–3 years of experience and an intermediate level of IT skills focused on everyday tools.

Call Center Administrators/Supervisors

The second group includes administrators and supervisors. They configure the system, monitor agent performance and keep operations running smoothly. This group represents about 20% of users and usually has 3–5 years of experience and advanced education. They are confident with IT tools, including presentations, conference calls and complex software. Their role combines technical configuration work with team leadership.


Persona 1

Petar is motivated by career growth and the feeling that he really helps customers. Financial stability matters to him, but he is just as driven by learning new skills and moving into a supervisor role. He wants to know the system well enough to support and coach new agents.Petar is communicative and proactive and he is not afraid of difficult tasks. He prefers to speak in his native language and values efficiency in his work. He approaches problems step by step and tries to give each customer a clear and complete answer. At the same time he feels strong pressure to work fast, keep quality high and deal with a complex interface. When the system does not explain what to do next, he quickly becomes frustrated.
Petar
  • Petar
  • Agent
  • 30 years old, Croatia
Primary Goal
Promptly solve customer problems while maintaining high service quality standards.
  • 2 years in call center operations
  • Higher Education
  • Representative of 80% of system users (agent role)
  • Full-time, hybrid work environment
  • IT Proficiency level: intermediate
  • Desktop workstation, smartphone
  • Actively uses smartphones, Smart TV and internet technologies for both work and personal use
  • 30% of users in this role work from mobile/tablet
Professional Goals
  • Advance to admin/supervisor position within 2-3 years
  • Improve communication and decision-making skills
  • Master the Dive system comprehensively
  • Earn competitive compensation
Quote
Sometimes I want to know what is the average time for opening tickets. It takes time for me to fill in all these fields. My main job is to help clients. I use notes usually. I need to see clients information about products and services that they have in use.
Pain points
Time pressure
Must juggle multiple information sources (customer data, ticket history, scripts) while on active calls, creating anxiety about response time
Steep learning curve
The interface complexity makes it difficult to understand proper workflows initially
Performance anxiety
Concerns about supervisor evaluation and meeting metrics are amplified by system inefficiencies, such as fragmented information spread across multiple screens and excessive clicking
Limited system guidance
The application doesn't provide contextual help or suggest next steps, forcing agents to rely on memory and supervisor support
Typical operations in Dive
Inbound communication handling
Receives customer calls/emails, accesses customer history, resolves issues and creates/updates tickets as needed
Ticket management
Creates new tickets, updates existing tickets with customer communication details, assigns tickets to appropriate categories
Supervisor collaboration
Requests assistance from supervisors for complex issues, communicates through internal chat
Knowledge base usage
References scripts, FAQs and product information during customer interactions
UX goals summary for Petar
Quickly receive all needed information about callers
Know actual information about rush hours and status online
Create ticket during call
See both call and ticket statuses
Receive notifications in time
Find critical info quickly

User journey map

Inbound communication flow

2021 101 21
Petar Agent

Goal

Handle incoming customer communication efficiently from preparation through resolution.

Scope of experience

Journey starts when agent is ready to receive communication and ends when communication and all related tasks are completed.

Phase Preparation Decision Making Communication Processing Communication Ending
User Thoughts "Focus on work, Ready for work, Start daily work" "Activation of attention, excitement, I decide take communication, Makes a decision" "View over past communication, Recognizes the last context, Know what client wants, What can I do for client?" "Is the customer satisfied? I did a great job!"
Actions View daily activity dashboard, Check personal status Receives signal about incoming communication, Reviews communication information (who, what, why) Acquainted with customer's problem, Looks for solutions (FAQ, tickets, scripts), Updates customer/company info Reports decision, Ends communication, Creates/updates ticket
System Response Shows main dashboard, Shows incoming changes, Shows current UACD status, Shows extensions Shows incoming signal, Fixes fact of communication, Shows communication information, Shows known contact or placeholder Action selection, System reacts on choice, Changes agent/communication status, Shows last client info, Shows possible solutions, Gives opportunity to change client info Changes agent status, Saves communication content, Registers communication in system, Shows possible ways to complete task
Touchpoints Personal Dashboard, Status (UACD), Extensions Incoming message with action choice, System notifications, Contact recognition Communication status view, Associated Records, Communication Actions, Search Communication status, Associated Records, Communication Actions, Post-processing
Emotional State 😊 Neutral-Positive: Prepared and ready 😐 Neutral: Focused attention 😓 Stressed: Information gathering pressure 😊 Positive: Relief and satisfaction
Pain points
Agent status management
Agent may forget to change status, missing expected incoming communications
Time pressure
Time pressure to resolve issues quickly while maintaining quality
Lack of context and information fragmentation
Lack of comprehensive customer context when communication arrives. Must search across multiple locations for relevant information during active call
Process uncertainty
Uncertainty about whether all necessary steps were completed
Opportunities
Automated status management
Implement intelligent status changes based on agent activity and schedule
Quality checklists
Post-communication checklist to ensure all required actions are completed
Contextual information display
Show all relevant customer information (history, open tickets, previous communications) in a unified view when communication arrives
Integrated knowledge base
Provide FAQ, scripts and solutions within the communication interface without requiring navigation

Affinity

Research question

How can we improve the Dive experience for agents and admins to help them resolve customer inquiries and manage teams faster and with greater confidence?

Cluster 1. Information Architecture and Navigation

Users struggle to understand the product structure: they can't see relationships between screens or identify which information is critical. Fragmented architecture forces them to jump between modules for a single workflow, increasing cognitive load and slowing task completion.
Sticky notes
Too many fields, I don't know what is important
Jump between modules to finish one task flow
I did not understand the system logic
Need settings in one place and in one flow
Connections between Skill Groups, Ticket Groups, IVR and Automation are unclear
Agent spends excessive time navigating between modules during active customer communications
Settings scattered across multiple locations without clear connections
Action items
Rebuild IA based on actual task clusters (not technical system structure): group related functions by Agent/Admin user scenarios
Consolidate related settings (Skill Groups, Ticket Groups, IVR, Automation) into unified configuration hub with clear visual connections between entities
Add inline contextual hints (e.g. 'This setting affects…') and dependency mapping between objects
Reduce number of clicks to reach key actions (ticket creation, status change, customer search)

Cluster 2. Efficiency and Automation

Many key tasks are still manual. Agents often re-enter data that already exists in the system. Admins have to recreate similar configurations again and again. This slows down work and increases frustration.
Sticky notes
Create ticket quickly, minimal by hand, maximum automation
System doesn't help in flow, doesn't tell what to do
Have I missed something important? I want to finish task properly
Admin spends a lot of time on settings; waits long for vendor support
Similar Skill/Ticket Groups must be configured from scratch
After a few months of adding user from zero I notice that there is a copy options
Agents must manually enter information the system already has
Action items
Smart search and auto-fill: When agent types customer name, automatically populate history, products, open tickets and suggest ticket category/type
Templates and clone: For Skill/Ticket Groups, dashboards and IVR settings — enable users to copy existing configurations and modify
Completion checklist: After call/ticket, display 'All required fields completed ✓' to eliminate anxiety about missing steps
Bulk operations: Enable admins to perform mass actions on agents, groups and rules

Cluster 3. Learning and Onboarding

The system offers comprehensive functionality, but knowledge of "how to use it" isn't embedded in the interface. New users take months to reach productivity, experienced users accidentally discover useful features late. This creates dependency on colleagues and support, increasing load on supervisors.
Sticky notes
When first I saw these fields, that was like: what I am going to do?
Agent spends too much time understanding interface
Some parts could be easier to do and understand. It is not user friendly
Admin discovered important features only after months of use
Need tips about what each setting influences; need tutorial for quick questions
Long onboarding times for new agents slow overall service speed
Heavy load of UI-related support tickets
Action items
Wizard-driven onboarding: Create step-by-step wizards for key scenarios (first call, ticket creation, group setup) with progressive disclosure
Contextual tooltips: Add tooltips explaining 'Why this matters' with examples of impact on related settings
In-app Help Center: Build searchable FAQ, scripts and video guides accessible without leaving the system
Feature discovery hints: Display unobtrusive notifications ('You can copy this setup' or 'Tip: use smart search here') when user performs action manually

Cluster 4. Real-Time Visibility and Monitoring

There's no single "source of truth": agents can't see their work context (queue status, statistics, ticket status), supervisors piece together the operational picture from different modules. This delays response to problems and reduces users' sense of control.
Sticky notes
Agent wants actual info about peak hours and line situation
Agent wants to see call status and ticket status together
Admin is afraid to miss agent status and requests for help
Supervisor needs to see all important statistics at once; current dashboard fragmented
Supervisors lacked clear visibility into team performance and SLAs
Need to respond to agent needs immediately without jumping between programs
Need to see all important information on a single unified dashboard
Action items
Role-based dashboards: Create Agent Home (queue, my tickets, daily stats) and Supervisor Home (real-time KPIs, agents needing help, SLA alerts) as primary work interface
Persistent status bar: Display UACD status (Ready/Break/On-call) with color indicator always visible, automatically updating based on context
Unified view: Show communication status + related ticket + customer history on single screen without switching
Smart notifications: Implement prioritized notifications for supervisors (agent raised hand, SLA breach imminent, escalation) with ability to act directly from alert

Key findings

1. Too many screens create cognitive overload

Agents and admins struggle with information scattered across multiple places. Agents can't find customer details during active calls. Admins see settings distributed across the system without clear connections.

This leads to
Longer task completion time. More mistakes because people miss important info. Higher stress during time-sensitive calls. Longer onboarding for new users.
What we did
We redesigned the information architecture based on card-sorting exercises with real users. We consolidated related info into unified views and added contextual sidebars that show relevant data based on the current task.

2. Hard to learn without help

"When first I saw these fields, that was like: what I am going to do?" New users face a steep learning curve. Even experienced users discover features months later: "After a few months... I notice that there is a copy option."

This leads to
Months-long onboarding. Inconsistent use of features. Powerful features underutilized. Constant dependency on supervisors and colleagues.
What we did
We implemented contextual onboarding with progressive disclosure. Created interactive tutorials for key workflows. Added a persistent help system with search. Implemented 'discovery hints' that surface relevant features based on user behavior.

3. Too much manual work

Agents manually enter information during time-sensitive customer interactions. Admins recreate similar configurations repeatedly without templates. Ticket creation requires manual field entry for information already captured in communications.

This leads to
Longer average handle time. More data entry errors. Agent frustration and fatigue. Reduced capacity to handle customer volume.
What we did
We implemented intelligent automation. Auto-populate ticket fields from communication context. Provide configuration templates and cloning functionality. Suggest responses based on communication type. Enable bulk operations for common tasks.

4. No real-time visibility

Supervisors can't see when agents need help. Agents don't have visibility into queue status and peak times. Critical notifications get missed when working across multiple screens.

This leads to
Delayed response to agent help requests. Suboptimal call distribution. Missed SLA deadlines. Reactive rather than proactive management.
What we did
We designed a unified dashboard system with customizable widgets showing real-time operational data. Implemented intelligent notification system that prioritizes critical alerts. Created shared views that allow supervisors to see agent screens for troubleshooting.

5. System connections are unclear

"I did not understand the system logic." Admins struggle to understand how skill groups, ticket groups, IVR settings and automation rules interconnect. Changes in one area have unexpected effects in others.

This leads to
Configuration errors that affect agent productivity. Dependency on vendor support for routine changes. Longer time to set up new configurations. Risk of breaking existing functionality.
What we did
We created a visual relationship mapping tool that shows connections between configurations. Implemented 'impact preview' that shows what will be affected by changes. Provided pre-configured templates for common scenarios. Added validation and warnings for potentially problematic combinations.
Sergey Berezyuk
Sergey Berezyuk

Thanks for reading. Questions? Challenges? Let's talk!

See more projects