It's a common product interview question: what makes a product good? My go-to answer is "respect". It's a catch-all term with multiple meanings, but I believe it covers all the most important elements.
Respect the Platform
Most products live on the web and/or on mobile. Each of those platforms come with certain expectations, both from the platform itself and from the users.
I believe that products should embrace the platform that they’re on. Not just make it work, but really try and use it to its full potential. For example:
- Be accessible. Accessibility benefits everyone. Closing a menu by tapping outside of it, dismissing a modal by hitting
Escape
, filling a form by using autocomplete—all standard accessibility features, and things we all benefit from. - Be adherent. On mobile, follow the Human Interface Guidelines or Material Design design system closely. On web, use semantic elements, don’t hijack native functionality, and be as open as possible.
- Be lenient. Meet your users where they are. If they want to download your app, great. But app fatigue is a thing, so don’t force it upon them.
Respect the User’s Privacy
Users share their data with you in confidence. Earn that trust, and then keep earning it. For example:
- Be compliant. Regulations can be a pain (looking at you, cookie banners), but at the end of the day they’re there to protect your users.
- Be conscientious. Always try and act in the best interest of your users. I want to believe doing the right thing will take you further.
- Be disinterested. Ask only for what you need. You can’t mishandle information you don’t have. It also removes friction for the user by not having to enter and maintain it.
Respect the User’s Time
Everyone’s busy, and no one wants to waste their time. Catering to this goes a long way in making your product feel friendlier. For example:
- Be efficient. Don’t stand between your users and your product any more than you must. Keep the signup and onboarding flow as short as possible, don’t hit your users with endless modals for your newsletter, and let them get value out of your product as quickly as possible.
- Be fast. Speed can almost always be improved, and users will always appreciate products getting faster. It increases their efficiency, it prevents wasting resources, and it opens up your product to those with slower connectivity or devices.
- Be welcoming. Not just on the way in but also on the way out. If a user wants to delete their account, let them. Of course you’d rather keep them around, but forcing this through dark patterns won’t do anyone any good in the long run.
Conclusion
These are just some of the principles I try to adhere to. The list and examples are non-exhaustive and there'll always be room for improvement, but I believe it's a strong foundation for any product to be good.