Well, I've done all of these things and never got fired. You have to be good at your job and train your management.
I was with GM for 6 months when they sent down orders to lay off 10% of the staff, usually the newest people first. My regional management received a notice from Engineering (200 engineers in the dept) that they could lay anybody off they wanted - as long as it was not me.
They all put up with me, as described in my article:
==> Managers: How do You Manage a Cat?