There are multiple levels of product design thinking

  • Level 1 (building based on current behavior. copying market default): People want to set status messages. Every Chat app gives an option to set statuses. Default statusus can be auto picked by the system: available, offline.
  • Level 2 (giving basic flexibility, deviating from default): Default is fine. But maybe people would want to manually select their status; Put Busy in case they don’t want to be pestered with messages, and want to do deep work. Even go offline if they want to do deep work.
  • Level 3 (reusability, tackling more use cases): If people are cycling through statuses, it makes sense to increase the variety of status messages. If people are going for holiday, maybe they would want a status which displays something more than ‘Offline’.
  • Level 4 (intelligent integrations): What if you could set status based on your Calendar? Maybe it could be pulled dynamically because you have a Google Calendar integration. If someone wanted to message you, they might hold if you were in the middle of a big presentation.
  • Level 5 (anticipating future user need): People forget to update their status after coming back from leave or after they take an WFH. Based on this observation let people set up expiring statuses for X hours/days.

The best product companies are at level 5. They anticipate user need by observing their behavior, and delight them by taking care of that need before people even request the feature.

Slack is at Level 5.

I am a big fan of Slack’s Design team. I have written about them here.