Justin Rhee
Nice to
meet you.
I’m Justin, a designer with a background in art, animation,
and code.

Previously, I led design at two NYC startups, Kustomer and CoPromote, where we shipped features that scaled products and built communities.

Currently, I'm a UX designer at Amazon where we're using data to improve planning, grow our team, unify design systems, and create incredibly simple and elegant experiences.
Apart from design, I like to read, run,

Let's connect – hello at justinrhee.net

Inspiring Behavioral Change


CoPromote wanted to get users to share more.

My role included design research, UX, visual design, and prototyping.


CoPromote is built on ExtJS, a JS framework that uses its own library for positioning and rendering elements. We wanted to avoid non-ExtJS styles and behaviors to build and test as fast as possible.


New users are introduced to the feed after boosting their first post. For more context, see Building Better Onboarding.

Original feed

A capture of CoPromote's original feed, when CoPromote was known as Headliner.

Deconstructing the feed

The feed is made of boosted posts by different users.

Anatomy of boosted posts

Iterations that increased engagement

Variable reward types

1–Rewards of the tribe

Nir Eyal writes that rewards of the tribe, or social rewards, can be powerful hooks that make us feel more accepted, attractive, important, and included.

2–Rewards of the hunt

The variety of content we find in feeds creates enticingly unpredictable experiences that make for compelling rewards of hunt.

3–Rewards of the self

Leveling up, unlocking achievements, and other game mechanics can fulfill intrinsically hard-wired desires to gain competency.

Adding variable rewards around the feed

Creating anticipation

Users on CoPromote earn varying amounts of reach when they share, but matches for their own content can take time. The share bar builds anticipation, while reassuring users with encouraging microcopy to make their wait feel less glaring.

Activating other users

Each time users share boosted posts to earn reach, notifications get sent to the original boosters. Since this event delivers on CoPromote’s promises, these users become more likely to boost again, subscribe, and share posts (delivering value to other users). This creates a cross-multiplying effect.

Variable reach incentives

Associating sharing with reward

Optimizing post schedules to increase engagements

Past engagements (likes, favorites, clicks) on a user's profile and engagements on similar profiles in the same time zone can be used to optimize post scheduling.

Adding explainers to increase adoption

Concept for Share Bar 2.0

Making the benefits of sharing more concrete

Internal triggers drive motivations

Although social and variable rewards can prove to be frequent motivators, the rewards must fit into the narrative of why people use the product and align with the internal triggers and motivations of its users.

Only by understanding what truly matters to users can reward systems and game mechanics accelerate the growth of a product. This is because content precedes design. And design in the absence of content isn't design – it's decoration.