When I first started at my current position, around a year ago, I was the only backend developer. There was a single front-end developer, and an Operations guys.
Even though our CEO is pretty cool guy and is probably the person that I have worked for during my experience, he was rather impulsive with his feature requests, and prioritizing. This put an ever-increasing pressure on me. So much so that I was about to quit. The project was doomed for failure.
I communicated this to him, and being the cool guy that he is, he spent a week and he brought an experienced product manager.
The project began to gain momentum, our CEO started communicating his requests through the Product Manager and the PM in turn researched, filtered, prioritized and communicated those requests as well-formed tasks. That PM saved the team and the project.
Seeing that and remembering how frustrated and miserable I found at the start of my position, I feel that I can see the similar pattern of exhaustion in current open-source maintainers.
I wonder if many open-source projects would be more sustainable if instead of one more dedicated coder, they could get their hands on a Product manager.
What do you think? I know PMs are not that popular among developers, But I wonder if PMs could actually be more beneficial to open-source projects than to enterprise, proprietary ones.
In my experience, in enterprise software, a product manager needs to exist not only as the custodian of the backlog and the manager of priorities, but also as the arbiter of monetary value. The PM will choose what projects make the most sense from an ARR point of view, because enterprise software exists to make money.
I think that this responsibility is what makes them mandatory in enterprise software and that’s why perhaps they are seen negatively by developers - they tend to choose features not based on technical merits, but financial.
However.
The best PMs I’ve worked with were able to articulate a consistent, useful vision for the product that also happened to make financial sense. The convinced the developers and the c-suite with the same arguments presented in different form.
OSS also needs money to survive, so similar concerns should apply. For me, a good OSS PM would listen to the community, create a vision for the product and so on, because a managed product is a used product, which for OSS is the equivalent of money.
It seems like a luxury, but even software startups don’t start with PMs from day one. They come later on, when the product grows enough, and customer demands start conflicting.
So yeah, I’d like OSS PMs as a function.
I have more thoughts on this, but I’ll stop here for now.
If you don’t have a product manager, you are the product manager (:
In seriousness though, I think it depends on where you want to spend your time, and the goals of your project. Many open-source projects are to scratch a personal itch, and for those I think you can get by fantastically without any product people as you are just writing software for yourself/the other developers of the software. You make all the decisions, you prioritize the work. If you are leading a user focused or customer focused open source project though then a PM could be very useful to help with the project maintenance - triage of issues, prioritization of work, engagement with customers to decide what’s important, so the authors can keep focusing on what they are good at.
I think it would take a special type of PM though to understand that even though they have chosen what they think the highest priorities are, in volunteer led open source projects you can’t make anyone work on something just because you think it’s important, you have to get the maintainers on-board. People working on things in their free time usually want to work on what’s important to them.