That's a soon to be ex employee.
Personal anecdata from a software team in a non-software company:
New project idea comes in. Developer asks for outline of specifications. Management replies with nebulous desires.
Developer insists over half a dozen "planning" meetings, where desires are mentioned but requirements not defined, despite all petitions and cajoling. Management fires developer for not being a team player.
From what I hear, that project has yet to happen a year after the aforementioned events.
And that's without criticizing, only with explaining the value of specifications before developing business critical applications.
So, yeah, employers get what they pay for: either sheep or conscientious employees, but can't have both.
Imagine getting fired over things you have little control over when you are responsible for bringing food to your little children and aging parents.
Thus why the other person suggests that being rude under the guise of "straight shooter" isn't always worth the risk of losing your income stream for your family.
Unless you are a blue haired social activist with parents to bank roll your existence and you having nothing to lose, outrage is a luxury.