16 September 2025
I’ve loved product design for as long as I can remember. When I finished high school, I seriously considered becoming an industrial designer. However, the only university I could afford at the time was not exactly appealing, to put it politely. On the other hand, I also liked technology and happened to be a really good coder. So I ended up studying software engineering and eventually landed in Barcelona as an iOS developer (a good one, I must say).
But, as they say, a leopard can’t change its spots.
After four, five, six, seven years of writing apps, I started to feel bored. The companies I worked for always encouraged me to step up as a technical lead or project manager, but I never really felt comfortable in those roles. Where I truly felt at home was in the place most programmers try to avoid: spending hours discussing with managers and designers how a feature should look and behave. Finding the best way to build something on time and without blowing the budget.
What started as something I did organically, simply because I loved it, eventually turned into an unofficial role. Except for a short break a few years ago when I chased a remote job, I’ve always navigated the waters between technical lead and product management.
Most programmers I know hate developing UI. They’d happily live in the terminal if they could. They don’t enjoy dealing with users who can’t grasp that a button labeled “press here” is supposed to be “pressed there”. They get frustrated when they spend weeks building what they believe is a clear UI, only to watch users interact with it in completely unexpected ways. For me, it’s the opposite. I’m constantly amazed by how creative users can be, how they push software to its limits to accomplish things I never imagined.
If users stand on one side of the room, CEOs and entrepreneurs are on the other. CEOs often suffer from a peculiar disorder that convinces them they’re geniuses. Most of the successful entrepreneurs I’ve met show some degree of this “illness.” They churn out terrible ideas at lightning speed. Ideas so obviously ridiculous to everyone else, yet to them, these are “the next Instagram.” And they’ll fight hard to make them real, because nobody wants to risk missing out on creating the next big thing.
That’s why I see Product Management as standing right in the middle of this triangle. A product manager takes the CEO’s wild ideas, simplifies and reshapes them into features users actually want, and packages them in a way programmers can (and will) build. The secret to success? Learning to handle constant rejection while still chasing the best solution without giving up.
The CEO will be angry because you simplified his “genius” idea until it no longer feels revolutionary. The programmers will complain that they now have to rewrite half the codebase and tear apart the shiny architecture they just finished. And the users? They’ll complain too, because they don’t want to learn anything new—they just want the same thing, but better.
So the main job of a product manager is finding the best compromise among these three forces. If you’re lucky, maybe the designer is on your side. If not, brace yourself: you’ll be catching complaints from each and every direction.
And yet…
Sometimes—rarely, but sometimes—you manage to align all three. And the result feels like magic. That moment when you ship a feature users love, and suddenly everyone is using it and asking for more. That’s when the role of Product Manager truly makes sense.
But don’t get too comfortable. While you’re reading this, your CEO is probably already dreaming up his next “brilliant” idea.