I think it's an interesting question, how organizations should deal with this. I think my previous employer actually dealt with it quite well - for the issues I cared about I _was_ given the opportunity to express my opinions and also share them with the people who were in the positions for making decisions around these issues. I was generally listened to patiently and also got (sometimes unsatisfying) explanations for why the actual course of action was different. I was _not_ given the authority to make these decisions or push these issues (the ones outside my area of expertise) through. I ended up leaving the organization in quite a bit of frustration, which I think was probably unavoidable, but I learned a ton from this episode, and we're otherwise still on good terms (I help out with little things now and then).