The biggest problem older EEs have over younger ones is that they have usually specialized over the course of their career.
Probably over the last few years with the downturn in the economy we have laid off most of the over 50 engineers where I work. The ones we kept were the specialists. I have one colleague in his mid 50's that burned through his retirement earnings after being laid off.. ended up dying his hair and finally got an offer - he's a generalist. Generalists tend to fall under the wheels fairly quickly when there is any kind of downturn so engineers specialize either on their own through doing an advanced degree or on the job, often with the employers encouragement. The idea is simply that generalists are fairly easily replaceable. But when an employer is faced with hiring a 58 year old experienced engineer versus a new graduate, they should be taking the 58 year old every time. So why aren't they? The benefits a 30 year + career will have brought in must surely outweigh almost everything else. Imagine the number of programming languages they must have been exposed to? The thought patterns they've seen lead to disaster etc etc.
At 58 years old and engineer still has 7+ years left. Thats a longer term outlook than you will find in any business operating today. Most businesses barely look past next quarter.
It's all about money.
So lets throw some salary numbers out there;
interns/new graduates/entrant engineers: 40 - 60K
new Masters/PhD's: 60 - 80K
experienced generalists: 60-100K
experienced Masters/PhD's/rockstar designers/engineering managers: 90-150K
As far as working as independent consultants go.. as best I can tell.. thats what you put on your CV when you are unemployed and sometimes pick up some part time work to help on projects. Perhaps a few can make a great living at it but its not generally an employment outcome. If the economy was pumping maybe that would change, but its not and hasn't been for at least 10 years.
Now lets get back to the question of there being a shortage. As I said the IEEE has been lobbying against H1B's for some time. Here's why there is no shortage.
IF employers were not allowed to import engineers from abroad in that 40-60K range above would they experience a shortage? The answer is no.. IF.. they were to raise their wages and employ older engineers. Older engineers are exiting the marketplace because jobs in the 40-60K range are not going to cut it in modern america for someone who was earning previously around the 100K rate. Its not that hard to earn above 60K by becoming a Nurse. Its not even that attractive to graduate engineers, especially if they are being asked to move around the country. You routinely see PhD's coming in from around the world for a 40K postdoc job at a Uni. Very few american graduates do graduate work because of that.. even fewer would do a Postdoc in that range. Now there is also a huge wage and tenure problem in Universities.. go figure.
So the story is basically that H1B's are pushing down wages and reducing the career length of american engineers. A similar thing happened in the UK when alot of older engineers ended up running bed and breakfasts in Cornwall after the collapse of alot of British Auto. When the mining boom ends in Australia and power engineers are back to servicing council substations we may see a bunch do something similar there. Now from those coming in from abroad (I am one of them) a 40-60K job can look very attractive. If you come from a place like indonesia or india where you might be earning 10-20K a year, some would give their left testicle for a job like that. Now the only question becomes.. can american business compete if they had to pay higher wage levels for their engineers? Commerce groups are arguing no and pushing for unlimited H1B's.