I kinda left off my conclusions from all of that: obviously you don't want a situation where (like in the designer vs web developer example), designers are empowered to dictate designs which would naturally result in poor implementations, and you don't want a situation where designers are subject to the whims of what the engineers do and don't feel like doing, and do or don't know how to do.
So how do you avoid those nonconstructive relationships? IMO/IME, you either need your specialists to have at least some intuition for what the other specialists do, or, failing that, you need to make sure that one group isn't politically empowered over any of the other ones. No one should be dictating terms to anyone else, everyone should have some ability to push back on things they disagree with, but at the same time if there's a clear consensus on something, one lone holdout can't stop the train. Pushing back on pusher-backers has to be possible too, when appropriate and necessary.
I don't think it's a bad thing to have specialists that have intuition about what other specialists do; in fact, that's a core responsibility for being a senior individual contributor. But, (and I covered this in my original comment), I think that this mediating labor is the role of product management, and there is a reason why product management is 100% a full-time job that cannot be skimped out on. I never understood why it needed to exist when I first started in my career, or I thought it was mostly a status-signaling BS role. However, the only way to mitigate that natural tendency of individuals to assume "it's 100% pure human nature to always assume that one's own piece is the most complicated or meaningful part of a project" is for a technical product manager to actually own the ramifications of all design and engineering decisions that are made and orienting the resultant product properly to the longterm strategic goals of the company. There is no substitute. Engineering and design direction are full-time roles in and of theirselves, and so too is product.
So how do you avoid those nonconstructive relationships? IMO/IME, you either need your specialists to have at least some intuition for what the other specialists do, or, failing that, you need to make sure that one group isn't politically empowered over any of the other ones. No one should be dictating terms to anyone else, everyone should have some ability to push back on things they disagree with, but at the same time if there's a clear consensus on something, one lone holdout can't stop the train. Pushing back on pusher-backers has to be possible too, when appropriate and necessary.