It all comes down to what salary you accept.

Also, if you get an American guy to come as an engineer his cost of living in his country, standard pay in his country etc will play a major role in his salary here. The package has to be more attractive than what he is currently getting to lure him here.

If these guys werent competant then I wouldnt imagine companies would be hiring them. You cant place the blame on local companies, they are looking at this from a business point of view. They are trying to get the best workers for the lowest costs, and if you are offered something and you accept I am sure the employers are not going to complain or tell you that you deserve more cause someone else makes more than that.