I think it can be a problem when the product owner role is strictly divided from the engineers.
But I've definitely seen it as a problem when the engineers take on product owner role. Engineers should definitely be thinking about user needs and those questions OP lists. But Engineers are too close to the code to be the actual responsible owner of deciding priorities based on user needs, or deciding what user needs take priority or are.
Product owner does need to be in the "kitchen" though -- product owner even in traditional agile scrum is supposed to be on the team every bit as much as the engineers, right? This is supposed to take care of the problem the OP mentions "make decisions in real time", "tight feedback loops, reassess, and make their next move" -- ABSOLUTELY, and agile and scrum as I understand it say the product owner is on the team to make this possible!
Things I think are true, to make things work:
* There absolutely needs to be a product owner who is not an engineer who "owns" user and business needs.
* They need to be on the team
* They should be in constant dialog with the engineers, educating them about user and business needs, and hearing their feedback and suggestions about how the engineers think they can best meet user needs. It should be a conversation engineers are included in, but Product Owner makes the call.
* the product owner (on the team) should not be the ONLY place engineers learn about user and business needs
* In addition to product ownewr responsbiel for "owning" user and business needds, there needs to be a technical lead who "owns" technical needs. (technical debt, efficiency including cost efficiency, etc; also team sanity needs!). In fact deciding what to do next can't be only up to the product owner and busniness/user needs. The time spent needs to be based on a combo of user/business needs with the product owner and technical lead in conversation -- but in this conversation the product owner (who is not an engineer) needs to "own" business/user needs, even if engineers are allowed to have an share opinions on them!
I have occasionally experienced this well oiled machine, and it works very well. As an engineer it is a huge RELIEF to have someone else responsible for human/business needs -- even though I do have an opinion about them and like to be educated about them, and think that's necessary to be a good engineer, and want that person to be interested in my opinion. But them having the responsibility (to the org) and final say over it leaves me feeling so much less stress, and able to focus on the technical problems and being the final say and authority and having accountability for those.
Getting this to work succesfully can't be done by just having the right structure on paper (although different structures can help or hurt), it takes skilled people who are about their jobs and get along and have experience that has given them some lessons on how to work together well.
But I've definitely seen it as a problem when the engineers take on product owner role. Engineers should definitely be thinking about user needs and those questions OP lists. But Engineers are too close to the code to be the actual responsible owner of deciding priorities based on user needs, or deciding what user needs take priority or are.
Product owner does need to be in the "kitchen" though -- product owner even in traditional agile scrum is supposed to be on the team every bit as much as the engineers, right? This is supposed to take care of the problem the OP mentions "make decisions in real time", "tight feedback loops, reassess, and make their next move" -- ABSOLUTELY, and agile and scrum as I understand it say the product owner is on the team to make this possible!
Things I think are true, to make things work:
* There absolutely needs to be a product owner who is not an engineer who "owns" user and business needs.
* They need to be on the team
* They should be in constant dialog with the engineers, educating them about user and business needs, and hearing their feedback and suggestions about how the engineers think they can best meet user needs. It should be a conversation engineers are included in, but Product Owner makes the call.
* the product owner (on the team) should not be the ONLY place engineers learn about user and business needs
* In addition to product ownewr responsbiel for "owning" user and business needds, there needs to be a technical lead who "owns" technical needs. (technical debt, efficiency including cost efficiency, etc; also team sanity needs!). In fact deciding what to do next can't be only up to the product owner and busniness/user needs. The time spent needs to be based on a combo of user/business needs with the product owner and technical lead in conversation -- but in this conversation the product owner (who is not an engineer) needs to "own" business/user needs, even if engineers are allowed to have an share opinions on them!
I have occasionally experienced this well oiled machine, and it works very well. As an engineer it is a huge RELIEF to have someone else responsible for human/business needs -- even though I do have an opinion about them and like to be educated about them, and think that's necessary to be a good engineer, and want that person to be interested in my opinion. But them having the responsibility (to the org) and final say over it leaves me feeling so much less stress, and able to focus on the technical problems and being the final say and authority and having accountability for those.
Getting this to work succesfully can't be done by just having the right structure on paper (although different structures can help or hurt), it takes skilled people who are about their jobs and get along and have experience that has given them some lessons on how to work together well.
A rare thing indeed.