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
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
Background
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
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.
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
#1
reason for lost sales deals in the 90 days before project started22%
of user feedback is a request for non-expiring dial-in numbers1 in 7
customer support tickets is about not being able to join call by phoneUser 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.
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.
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 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.
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.
Security
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.
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:
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