If U.S. companies can only compete on cost alone... It won't win against the asian players...even if it massively outsources everything....
The only advantage american companies have is if they can out-innovate everyone else and charge a higher premium for that innovation...and successfully keep things "closed-door"/proprietary....
Look no futher than Motorola... Once the #1 cellular company, it use to TRAIN every other company on cellular technology (remember Motorola University?)....Now where are they? Just one business unit of Lenovo after years(decades of decline)...
Apple's saving grace is they have been apple to keep their secret sauce within Apple and hasn't shared anything to any other OEM's....
As far as your employment prospects in technology, let this be a reminder for you young people just starting out.. It's not about how well you "code/program".. .You can always find someone that can "code/program" decently..And someone can probably do it cheaper too...You really need to spend most of your time being more "creative" in creating a "product"... in your architecture/design/tools/etc...Labor gets easily outsourced, creativity does not....