No one can snatch your job if you are competent enough.
I disagree. In todays global market a lot of decisions are made based on "what is cheapest". My previous job we serviced a lot of clients and almost all of them decided on the cheapest option we could provide.
I watched coworker after coworker (all USA based) lose their jobs to oversees replacements, not because they weren't good at their jobs, but because it was cheaper to hire someone in India, or Costa Rica, etc. to do the same thing.
Do a search on "jobs moving overseas". Are you really saying that the 100,000's of people who've lost their jobs to overseas competition weren't good at their job? That the only reason to do this is that overseas workers are better than them?
I suppose there is a two sided way of looking at it. Some people will benefit, others will loose out.
Yes it is cheaper to outsource, but who's smiling in the end, not the permanent employed people about to loose their jobs. The only ones laughing to the banks is the owners/groups of companies that allow outsourcing. They will add value to an already deflated price, making money all the way.
The flip side I suppose is the people getting the "new" contract, making a living because they can not find jobs in their current infrastructure.
If you're in the U.S. right now and you can actually code, you can find a job. People aren't unemployed because of outsourcing, they're unemployed because they can't code, or because they're not looking very hard, or because they're choosy.