At any rate, I wouldn't be so quick to assume that the larger companies are outsourcing and the smaller companies are hiring
In all fairness, I don't think I was excluding small companies from outsourcing - there's great benefit for them there too; but I predominantly have experience of large companies - and the majority of them outsource a lot of their datacentres (which is really the sys admins too) - so I'm not assuming, I'm talking from experience.
Both of your reasons for outsourcing are actually about cost - and outsourcing to a specialist company for something can often be cheaper than doing it yourself, simply due to the economies of scale (which you imply somewhat with your second reason), again it seems simple economics have slipped through the fingers of the media when it comes to this type of thing, so everyone believes that outsourcing is bad for the country's economy.
Architect / Engineer / etc are not = sys admins (though as I said, there are those that do everything and anything). The point I made, which you were quick to challenge was regarding sys admins - these are the readily and easily outsourced people. Just as developers, support staff, call centres, etc are all easy (probably too easy) to outsource, so are sys admins.. after all, for most companies what do you want ? a box of standard spec that runs your application - HA, Load Balancing, DR, Virtualisation, Storage Networks, Component Redundancy etc are coming more as standard options, so for a lot of companies with standard needs, it's easier to get them to offer a standard package and have their sys admins manage it (Not even considering the more forward thinking cloud computing, which has a long way to go for enterprise buy-in). For more complex requirements, the likes you get from bigger companies, they will usually have in house specialists who will design the solution.... but they don't usually get their hands on the actual box. that's the difference. For someone who is starting out and asking for advice, I think this is an important point to understand.
As you mention in your first post, and I think others have alluded to - if you want to make good money, have good prospects etc, you need to be looking at things outside of this 'utility' market - there will be some premium jobs out there for this, but a diminishing number, likely strongly fought over. That will be the first to go when companies feel the need to cut cost, improve performance and/or mature enough to do so - unless of course that is your company's specialty/differentiator - e.g. if you're a google or a microsoft, I would be surprised if outsourcing the infrastructure was on the cards... but ya never know... ;-)
I don't think that devalues the technical expertise of people in this environment, instead I think it strengthens their opportunity to work more at the design level. But as advice goes, it depends on the perspective of the OP and what they want to actually do - it's just worth noting that some functions will become pure utilities.. maybe in the US this has not yet emerged as much, but across Europe a lot of people I know who have contracted in that space have found the market has changed considerably over the last 5-7 years, and they've had to move on.
A smile is worth a thousand kind words. So smile, it's easy! 