Where do we stand on hoarding code to protect against outsourcing? I have a friend who is encouraging his team to do everything he can to hoard and make it impossible for recently onboarded individuals in a "cheaper cost center" to mess with it.
I think it's the right call, for both the team and the company. The team wants to keep their job, and to keep building the thing they worked so hard on. But I think it's also best for the company. Management can't control themselves when they see that they can get literally 10 engineers for the price of 1 local engineer. They know that each of the 10 is going to be less good than than a local engineer, but they always fall for "but still, they're not that much worse and for that price how can I lose!".
Of course, the damage of 10s of mediocre-bad engineers is far more costly, especially when outsourcing an existing project. So I'd say it's the right thing for everyone for the team to protect their code ownership anyway they can.
If your hierarchy is trying to destroy the product you create, just leave. You are not the main stackholder, and do not get benefits from the well-being of your product. The only things that should be importants as and an employee are “is my job interesting” and “are the work conditions great”. If you have to fight your management, they have already lost you because they just broke your trust, as well as the second point.