I tend to agree, the issue in the Tech Industry isn't as much the shortage of workers, as it's much more a shortage of the Industry to pay a wage for the worker they want. In lieu of that, the Industry isn't as willing to invest in it's Human Capital, expanding training and skill sets. They're afraid if they train you, you'll go find a better job. Well, if you don't train them, what if they stagnate and don't go find a better job?
If you aren't challenging your Tech Workers, then they want to move on, to avoid being bored, to find a new challenge. But if you train them, invest in them, they become invested in their company, and if they're challenged, they're just too busy and too happy to think about if the grass is greener on the other side of the street.
There's a reason that H1B workers strive to be great English speakers. English is the language of business, and it's still where people want to move towards to be successful. If we cultivate a culture of Tech Workers to move a long...then companies become a Journey, not a Destination. Would you rather work for a company who is the proverbial Wilderness, or the Promised Land?
Invest in Human Capital. That's how a Company is built that becomes a Destination, and not just a Journey to something better.