Back Dialpad ยท Catch Up
Dialpad ยท iOS ยท February 2025

Never miss what matters

Catch Up feature โ€” Dialpad iOS
Role
Senior Product Designer
Timeline
Oct 2024 โ†’ Feb 2025
Team
1 PM ยท 4 iOS Devs ยท 1 QA
Tools
Figma ยท Amplitude

Helping Dialpad users catch up on what they missed โ€” fast

Catch Up started as an internal hackathon idea โ€” a way to help mobile users quickly get through unread messages without losing context. I was the sole designer on the project, owning the full design process from initial concept through GA: defining the interaction model, building the visual design, specifying every edge case, and iterating with the team post-launch using real Amplitude data.

The hackathon entry was runner-up in the Customer Happiness category at the EPD Hackathon 2024 โ€” and a few months later, it shipped to GA as a real feature used daily across the org.

๐Ÿš€
Hackathon โ†’ shipped product
C-Level approved, scoped, and launched to the full iOS base within months of the hackathon
EPD Hackathon 2024 โ†’ GA Feb 2025
๐Ÿฅˆ
Runner-up ยท Customer Happiness
Recognized for solving a real user pain point at the DialedIn Takeover event
EPD Hackathon 2024 ยท DialedIn Takeover
๐Ÿ“Š
Data-driven iteration post-launch
Built Amplitude dashboard from scratch, identified key gaps, and shipped two follow-up iterations
Settings ยท Brand & delight

Once you open it, you're committed โ€” or you lose it

Mobile users at Dialpad โ€” sales reps, support agents, managers on the go โ€” were constantly returning to an inbox full of unread messages and missed calls. The existing experience gave them no way to triage or act efficiently. A broader notification overhaul was already in progress as a separate cross-platform initiative โ€” Catch Up was designed as a focused, faster solution for the mobile triage problem specifically.

  • โ–ช No way to defer โ€” once you opened a message, it was marked read. There was no way to flag it for later without losing it in the list.
  • โ–ช No priority signal โ€” everything sorted by recency, with no way to know which messages needed urgent attention.
  • โ–ช No progress sense โ€” users had no way to know how many items were left or feel like they were making progress.
User feedback โ€” J. Tierney User feedback โ€” Terri

Users away from their desk โ€” but still in the loop

The feature was designed for users who work primarily from their phones โ€” traveling between meetings, on the floor, or managing teams remotely. They don't have time to scroll through a full inbox, but they can't ignore it either.

Who Context Need
Sales reps & AEs On the move between calls Triage fast without losing context
Support agents High message volume Scan and act without reading everything
Team leads & execs Checking in periodically See what needs attention at a glance

From hackathon idea to shipped product โ€” in weeks

The concept started at an internal hackathon โ€” but the problem it solved was real. After the hackathon, the project was nominated for the Customer Happiness award and got C-Level sign-off to move forward. That greenlight turned a prototype into a full product โ€” with proper scoping, engineering alignment, and a phased milestone plan.

โ€ข

Existing pattern analysis

Dialpad already had a way to mark messages as unread โ€” but it required several taps, worked one conversation at a time, and wasn't discoverable. Users who wanted to "come back to this later" had no fast path to do it, especially on mobile.

โ€ข

Competitive review

Looked at how email clients, Slack, and other messaging apps handle triage โ€” swiping patterns, snooze mechanics, and read/unread states to understand established mental models.

โ€ข

Scope definition with PM and Engineering

Ran a scoping session to separate the core experience from nice-to-haves. Defined Milestone 1 using MoSCoW prioritization โ€” the must-haves were swipe interactions, a progress counter, and access from the home screen.

Catch Up โ€” alignment doc

Documentation to align Product, Design & Engineering ยท MoSCoW framework

Building a gesture-first triage experience

The core design challenge was making a high-volume task feel light. Catch Up needed to feel fast, clear, and rewarding โ€” not like more work. The interaction model centered on two gestures: swipe right to mark as read, swipe left to keep unread for later.

Key design decisions

Every element in the screen had a job. Nothing was decorative.

Navigation

Entry from home screen

Catch Up lives right below Threads โ€” visible from the first screen. No hunting required when you come back to the app.

Interaction

Swipe gestures as primary action

Swipe right = mark as read. Swipe left = keep unread. Buttons exist for accessibility, but gestures are the main flow โ€” fast and thumb-friendly.

Feedback

Progress counter

"10 of 23" at the top. Gives users a sense of momentum and a clear end โ€” making the inbox feel finite, not endless.

Delight

Done state with illustration

Custom illustrations by Magali Morales appear when users clear their Catch Up. A small reward that reinforces the feeling of completion.

Catch Up โ€” Design structure with annotated components

Design structure โ€” annotated UI with key interaction zones

Feature walkthrough โ€” swipe interactions, progress counter, done state

Three flows that make the experience work

โ€ข

Entry & notification

Users access Catch Up directly from the home screen via a persistent entry point below Threads. A push notification nudges users back into the app when there are new items to review.

Catch Up feature discovery and notification

Catch Up feature discovery โ€” notification design to drive awareness

โ€ข

Triage โ€” swipe or tap

Each card shows the conversation with a quick-reply composer. Users swipe right to mark as read or swipe left to keep unread. Buttons provide the same actions for accessibility. An undo action is available for 3 seconds after each gesture.

Swipe interaction wireframe

Swipe interaction โ€” wireframe shared with engineering for implementation specs

โ€ข

Onboarding โ€” interactive tutorial

First-time users see an interactive swipe tutorial on their first open. It teaches the gesture model in context, using the actual UI so there's no mismatch between the tutorial and the real experience.

Onboarding wireframe

Onboarding sketch โ€” early concept for an interactive tutorial to teach the gesture model on first use

Internal EAP first, then Amplitude-driven iteration

We launched Catch Up internally before releasing externally. This gave us real usage signal before GA โ€” and real Amplitude data to iterate on.

โ€ข

Internal EAP โ€” all Dialpad employees

Catch Up shipped to all Dialpad employees as the default experience before GA. Real usage at scale, catching edge cases under actual working conditions.

โ€ข

UI polish with development

Close collaboration with iOS engineering to refine button contrast for dark/light mode, tune swipe velocity, and tighten animation timing. Small details that made the experience feel native.

Before / after โ€” UI polish

UI polish โ€” button sizing, card background, and action bar refinements

โ€ข

Amplitude dashboard โ€” built from scratch

Since Catch Up was a net-new feature, I defined the full event taxonomy and instrumentation plan, partnered with iOS engineering to implement, and built the tracking dashboard in Amplitude to monitor adoption from day one.

Strong launch. Clear next bets identified.

The feature launched successfully and was well received โ€” 24K users in the first month. Post-launch data gave us a clear picture of what worked and where the next iteration needs to focus.

๐Ÿฅˆ
Runner-up ยท Customer Happiness ยท EPD Hackathon 2024
DialedIn Takeover ยท CLW 2024
๐Ÿš€
Hackathon prototype shipped to GA within months
C-Level approved ยท Feb 2025
๐Ÿ“Š
Amplitude dashboard built from scratch post-launch
Full event taxonomy ยท funnel tracking

Internal customer feedback โ€” EAP

Internal customer feedback on Catch Up Internal customer feedback on Catch Up
What we learned โ€” where we went next

Post-launch data shaped two clear iterations. Both came directly from user signal โ€” one from feedback, one from usage patterns.

Iteration 01

User-controlled prioritization

We had pre-defined which messages appeared in Catch Up and in what order โ€” DMs first, then channels, then threads. Post-launch, users pushed back: they wanted to decide that themselves. We designed a lightweight settings screen to give them that control, validating the demand before committing it to the core experience.

Catch Up settings

Catch Up settings โ€” filter by message type to prioritize what matters

Iteration 02

Brand & delight

Dialpad was in the middle of a rebrand, and we saw an opportunity to bring new brand elements into the product. We partnered with Marketing to commission custom illustrations by Magali Morales for the done state โ€” turning task completion into a moment of reward and personality. The collaboration opened an ongoing working relationship with the Marketing team around brand expression in product.

Done state illustrations

Done state illustrations โ€” five variants by Magali Morales

What I learned

01

Ship lean, learn fast

Launching as an internal EAP before GA meant we had real usage data before committing to the final design. Post-launch metrics revealed gaps we couldn't have predicted in design reviews โ€” data resolved what intuition couldn't, and gave us a clear roadmap for the next iteration.

02

Defining your own analytics is part of the design process

Building the Amplitude dashboard from scratch โ€” defining the event taxonomy, instrumenting with engineering, building funnels โ€” was as much a design decision as any visual choice. If you don't define what success looks like before launch, you can't learn from it after.

03

Small moments of delight have disproportionate impact

The end-state illustrations were a last-minute addition โ€” but they became one of the most talked-about parts of the feature. Emotional reward at task completion drives retention in a way that functional UX alone doesn't.

All projects Back to home
โ†‘
Next project Dialpad iOS Calling Redesign
โ†—