UX    ID    resume    contact

Highfive: Static Meeting Codes

Highfive is both hardware and software as a service. Conference phones, cameras, and meeting software are developed as one and sold together to ensure a seamless UX for customers.

It is most well known for having zero downloads, being completely browser-based. This particular squad project was about implementing static meeting codes to enable a persistent dial-in number for calling into Highfive meetings over traditional PSTN phone lines.

Role: Design Owner
Squad Sizes: 1 Designer, 1 SWE
Managed By: SVP of Design, CTO, Eng Manager
Areas of Focus: User Research, Testing and Evaluation, UX/UI (Mobile, Web, IA), PM

Neglecting Users’ Habits and Industry Norms

For dialing into video conferences with a phone, competing products follow a similar model. They provide users with a persistent number to dial in to, after which users have to enter a unique meeting ID/code to join the meeting.

Right (bottom on mobile): Zoom’s persistent dial-in numbers don’t change over time

In developing the first MVP for dialing in, Highfive’s design team felt that these codes were a source of friction, especially entering meeting IDs over the phone.

They implemented a “/phone” page for each meeting that would generate temporary phone numbers pre-assigned to specific meetings to let users into the correct meeting without any code entry.

Quantitative Analysis

A Pressing Problem for Sales


reason for lost sales deals in the 90 days before project started


of user feedback is a request for non-expiring dial-in numbers

1 in 7

customer support tickets is about not being able to join call by phone

User Feedback

Hearing our Users’ Problems

To better understand the problem, I sat in on customer success and support team meetings with our users. Here are some notable quotes

  • “Our company’s internal users are used to expiring numbers but not our external users. They get confused and end up failing to join calls.”
  • “ It’s pretty annoying to have to open up a web page to get a number to dial into a meeting. Kinda defeats the purpose of dialing in tbh.”
  • “Jeff is in a remote location off-the-grid and when we had Webex he could call in to our weekly meetings with the meeting number because it never changed.”

Existing UX Flow Analysis

Understanding How Dialing-in Works on Highfive with Eng

I sat down with the backend team to lay out all current points of entry for dialing into meetings.

Our user research and shown that user pain points centered around pre-scheduled meetings. This was because, for ad-hoc meetings, users were already in contact with their participants; they could call them directly without Highfive.

I realised we could focus our efforts first on an MVP that fixes just the calendar entries to precisely solve current user pain points.

New UX Flow

Ensuring Common Understanding Across Squad

To achieve buy-in with my SWE, I ensured that we presented our intention and rollout plan to our managers for approval.

With that, we added persistent numbers and meeting codes to scheduled meetings while leaving everything else untouched.

Team Execution

Working with Eng, QA, and PM for Release

Scheduled meetings have new, persistent dial-in numbers with a unique meeting code in the generated text block.

Right (bottom on mobile): Changes made to the Google Calender extension.

Right (bottom on mobile): Changes made to the Microsoft Outlook add-in.

New responsive web pages for retrieving international dial-in numbers were also implemented.
I worked with QA and the rest of Highfive to dogfood the feature. 

Through testing, we found out that tap-to-dial on certain Android phones were failing due to commas registering different pause lengths in the dialer. As a fix, double commas were implemented.


Implementing a Way to Revoke Meeting Codes

If the list of participants for a meeting were to change (someone leaves the team or organisation), access to the meeting can be modified by revoking the meeting code and re-scheduinge the meeting for a new code.

Right (bottom on mobile): I  implemented a new section in the admin dashboard for this purpose.

Impact & Future Iterations

First Positive NPS in 6 Years

View the feature notes I wrote with the support team for this release.

After this release, our NPS score broke positive for the first time in years and sustained itself for months. Users loved our implementation and gave positive feedback in post-call surveys.

For Phase 2 of this feature, we plan to:
  • Implement an easy way to populate persistent dial-in numbers for all recurring calendar meetings with a Highfive meeting link in the description
  • Streamline dial-in functions to drop expiring numbers across the service
  • Utilise Caller ID to identify phone callers in meetings
  • Let organisations customise their dial-in number
  • Collect user feedback regarding meeting code security and implement further options if necessary