HYENA RIDER ASSISTANT · PRODUCT DESIGN & MANAGEMENT

Stabilizing core experiences.
Building rider trust.

Download on the App StoreGet it on Google Play

I grew from Product Designer to Product Manager, bringing app, firmware, and hardware teams together to improve pairing, firmware updates, and app reliability for 50,000+ riders.

Live on iOS & Android · Ongoing maintenanceExplore the results ↓
Hyena Rider Assistant mobile app shown on a phone centered on bicycle handlebars
Hyena Rider Assistant · Helping riders connect with and maintain their e-bikes.
01 / OVERVIEW

A connected product.
A complex foundation.

HRA helps riders pair an e-bike, record routes, review ride data, update component firmware, and manage maintenance across North America, Europe, and Asia.

50,000+riders
50+e-bike models
15brands

I joined during the late MVP stage, when usability gaps and technical debt affected core journeys. Every improvement had to work across different bike controls, firmware versions, and mobile platforms.

One rider experience. Several connected systems.

  1. AppInstructions & permissions
  2. BLE connectionCommunication with the bike
  3. HMI & firmwarePhysical controls & component behavior
A simplified view of the systems involved in pairing and maintenance.
Timeline
July 2020 – Present
Platform
iOS & Android
Focus
Core experience & reliability
Current stage
Stable operation & maintenance
02 / MY ROLE

From product design
to product ownership.

  1. JULY 2020 – MARCH 2022

    Product Designer

    Redesigned HRA from version 1.0 to 2.0, connecting rider needs with e-bike hardware behavior and app logic.

  2. APRIL 2022 – PRESENT

    Product Manager

    Led improvement priorities, specifications, and cross-functional delivery. After stabilization, my focus shifted to maintaining product reliability.

Turn rider signals into shared priorities.

  1. UnderstandInterviews, usage & support
  2. AlignApp, firmware, hardware & QA
  3. Deliver & follow upSpecifications, releases & results
My contribution connected product decisions with cross-functional delivery.
03 / CHALLENGE & STRATEGY

Protect the moments
that determine trust.

01

Fragmented systems

Different bike controls, BLE behaviors, and firmware versions made consistency difficult.

02

Unreliable core journeys

Pairing failures, interrupted updates, and crashes prevented riders from experiencing the app’s value.

03

Competing priorities

Teams needed a shared view of rider impact to agree where to invest development effort.

The bike works without the app. Every interaction has to give riders a reason to trust it.

I used behavioral data, interviews, and support feedback to make the case for fixing critical journeys. Three focus areas connected the work:

  1. 01 / CONNECT

    Pair successfully

    Reach the first usable experience.

  2. 02 / MAINTAIN

    Update reliably

    Understand progress and recovery.

  3. 03 / RIDE

    Keep the app stable

    Protect the everyday experience.

Focus areas across the rider journey; not a release timeline.

04 / IMPACT OVERVIEW

05 / PAIRING

Make the first
connection work.

Interviews and usage data showed onboarding drop-offs. Generic instructions did not account for different startup procedures and BLE indicator lights across bike models.

I mapped pairing friction with engineering, documented each HMI’s behavior with hardware and firmware teams, and translated those rules into a shared implementation specification.

The same instruction does not fit every bike.

LED MULTIShort press

Less than 0.5 seconds to power on.

White status light when disconnected
LCD COMPACT EXLong press

More than 2 seconds to power on.

◉ Bluetooth symbol indicates connection
Hardware behavior → Model-specific instructions → A clearer next action
Selected examples from my HMI behavior specification. I translated differences in button timing and connection feedback into rider guidance.

From generic instructions to guidance riders can recognize.

BEFORE · ONE GENERIC INSTRUCTION
Previous pairing screen: turn on the bike and press the power twice, using a generic button illustration.

Riders had to translate a generic button instruction to their own bike.

Recognize the control

Recognize the control

Choose the HMI that matches the bike.

Follow the physical action

Follow the physical action

See the control and the required button action together.

Understand the feedback

Understand the feedback

Explain persistent flashing in context, with help available during pairing.

Selected screens from the documented before / after design. Model selection, specific instructions, and contextual help make the pairing journey easier to follow.
Pairing success · Post-release follow-up
PlatformBeforeAfter
Android21%90%
iOS75%95%
Average time to pair
PlatformBeforeAfter
Android2m 35s2m
iOS1m 33s1m

Onboarding retention improved by 17%.

06 / FIRMWARE UPDATES

Improve the logic behind
a reliable update.

I raised the severity of firmware update failures using observed data, then brought app, middleware, and firmware teams together to examine the update logic. A failed controller update could affect the bike’s assistance, making recovery a product priority.

01

Map failures across the system

I reviewed update data and brought stakeholders together around the severity of the problem, mapping failures across devices, app versions, and firmware types.

02

Work through failure and recovery

I coordinated discussions on update steps, failure handling, and retry behavior with middleware and firmware teams. The visible UI changes focused on clearer troubleshooting after an update failed.

03

Coordinate the delivery

I documented the agreed behavior, coordinated delivery, and shared follow-up results several months after the improvements were released.

Make each failure point discussable.

  1. PrepareEnter bootloader · read component info · erase flash
  2. Transfer & writeWrite data to cache · program flash
  3. Verify & returnVerify flash · return to application
Failure → Recovery path

Retry from the update page. If the app is restarted, surface the update retry prompt and guide the rider back to the update flow.

Simplified controller update sequence, redrawn from the project specification. HMI updates use a separate DFU flow.

From observed failures to a measured release.

  1. Surface the problemUse observed update data to establish severity.
  2. Resolve across teamsDiscuss failure points, retry behavior, and test findings.
  3. Release & reportTrack outcomes and share post-release results.
v1.7.0 Success / failure tracking addedv1.7.5 Controller retry & flow improvements
Milestones recorded in the firmware follow-up document. These connect the implementation work to later outcome measurement.
View the original failure / retry sequence
Original sequence diagram documenting update failure, retry, and relaunch behavior.
Original project artifact. Select the image to inspect it at full size.
Firmware update success
PlatformBeforeAfter
Android65%99%
iOS91%99%

Over 90% fewer support tickets

Update-related tickets fell within one month after launch.

60% less troubleshooting

After-sales field testing reported fewer troubleshooting needs following the update.

07 / APP RELIABILITY

Stabilize the foundation
riders depend on.

Android’s crash-free users rate was 78%. Crash complaints were a recurring theme in negative reviews, making stability a priority for the product.

01

Make failure patterns visible

I worked with the team to integrate Firebase Crashlytics and build a dashboard, prioritizing hotfixes by crash frequency and rider impact.

02

Test the difficult cases

I partnered with QA to expand edge-case testing, especially around BLE interactions, and set up staged releases to validate improvements progressively.

A repeatable path from crash signal to release.

  1. Identify & prioritizeCrash frequency × rider impact
  2. Fix & validateEngineering fixes · QA edge cases
  3. Roll out & monitorStaged releases · follow-up checks
Retrospective process illustration based on the project account; not a historical Crashlytics dashboard.
Crash-free users · Within 4 months of the improvement plan
PlatformBeforeAfter
Android78%98%
iOS92%99%

Top 3 crash causes resolved

Crashlytics logs confirmed those causes remained resolved across two app versions.

App Store rating: 3.5 → 4.2

The rating improved during the stabilization period.

08 / CONTINUING OWNERSHIP

Keep the trust
we worked to build.

I connected rider feedback with system-level issues, aligned teams around shared priorities, and turned those decisions into measurable improvements.

DELIVERED

A stronger core experience

More successful pairing and updates, fewer crashes, and less support friction.

ONGOING

Stable operation & maintenance

I remain the Product Manager. Since the product stabilized, the focus has been on maintaining that stability, with no dedicated new-feature development.

← Back to selected work