This post is a collection of lessons that I've learned so far from my young career as a product manager. It will grow in scope as I do, so check back for updates!
Getting computers to do things is hard. Getting humans to do things together is (imo) harder. The software PM role is essentially getting humans to get computers to do complex things with as little as possible getting lost in translation.
If you get into PM for the prestige, you're choosing the wrong career. PMs have no authority and all the accountability. It's a very humbling role to convince and coordinate all the creatives and builders towards a common goal.
Know just enough in many domains to call out bullshit when you see it.
You've done a good job as a PM when the whole team can place themselves in the customer's shoes when making their daily micro-decisions without consulting you.
Always seek win-win scenarios when trying to influence others. To do this well, you must deeply understand the incentives of everyone around you.
Trust and empathy are everything for building credibility. Show up for others and they'll show up for you.
Knowing which decision to belabour and which ones to quickly pick the best seeming option is a key skill for a PM.
While “data-driven decision making” sounds objective, it's really not....all data makes assumptions, can be interpreted in different ways and is flawed/incomplete in other ways. What really matters to make good decisions is enough data + past experience + good judgement.
Find your unique leverage and the unique leverage of everyone you work with and make sure that they're using it as much as possible.
As a PM, my primary output is the synthesis of my thinking into clear, concise writing/communication.
Building compelling narratives out of muddy data is a powerful and underrated skill.
The more experience I gain as a product manager the more I realize how many product decisions (both brilliant and terrible) are complete accidents or oversights. We really overestimate the power of intentional design.
There is a difference between how your product is used by customers (the tasks they come there to do) and how customers use your products (as part of a larger workflow or objective).
One of the easiest ways to improve your product's UX is to write empathetic and specific error messages.
Friction isn't always an obstacle to be removed. It often serves an important role in products to promote safety, correct errors or to ask the user to consider something carefully. Add friction in flows that are consequential or result in the user's growth; remove friction everywhere else.
Good judgement and intuition are the result of internalizing models and frameworks until they become automatic.
Experience for a PM is so valuable precisely because it lets you exercise and fine-tune your judgment repeatedly.