As we redesigned the interface, we kept simplifying — replacing labeled buttons with icons, shortening names, and showing people only as small avatars in tables and lists. In a project management app full of tasks, discussions, notes, and subscribers, this seemed like the right trade-off at first. But after release, users started asking for a clearer sense of who was behind each item. They wanted to click a name or avatar and instantly see more: the person's role, recent activity, maybe even their workload. That feedback led us to design the User Card component, a small addition that restored context without sacrificing the simplicity we had worked so hard to achieve.

Faces Before Functions

When we looked deeper into what users were really asking for, four clear "jobs to be done" emerged. They wanted a quick way to understand who's on the team and what each person is working on. They needed smoother communication flows without switching between tools. They hoped for better visibility to increase accountability. And, above all, they wanted these improvements to strengthen collaboration rather than add more clutter. The User Card component became our answer to all four — a lightweight layer that connects names and faces with meaningful context.

A dialog displaying a data-rich User Card
A dialog displaying a data-rich User Card.

Even though we clearly understood those four user needs, we chose to hold back on one of them — showing what each person is currently working on. Technically, it sounded appealing, but in practice, it meant fetching large and constantly changing data sets, which could easily slow things down. Instead of overloading the first version, we focused on the essentials: identity, role, and basic activity. The goal was to keep the interaction fast and reliable, and to leave room for deeper insights later, once the foundation proved solid.

A dialog displaying a reduced set of data on the User Card
A dialog displaying a reduced set of data on the User Card.

Working iteratively, progressive enhancement lets you start from a minimal, reliably fast experience and layer features on top only when they actually increase value. In our case that meant trading a crowded card full of buttons and links to secondary screens for a glanceable summary (name, role, team, availability) and one clear action that moves the user forward (chat). That smaller interface delivered value faster, and it turned out to be easier to test, measure, and improve.