I feel that the real problem here is one of corporate greed. Yes, a business should make money for its investors but it also has to care for the people that make it possible for the company to exist. Pay at companies should be directly tied to the pay of the level below it. For instance, a CEO should only be able to make double the average pay of the level below them.
If the lowest level workers make an average pay of $15 per hour then the next level, say level one managers could have an average pay of $30 and Max pay of $45. Second level managers would have an average wage of double the true average wage of the level below to a maximum average of $60 and Max pay of $90. Doing this all the way up to the CEO would result in a company tying executive maximum pay to the average pay they give their bottom level employees. Instant incentive to pay well at the bottom.
Further tying maximum total of yearly dividends paid out to the total payroll (say 100 or 1000 times payroll, (a totally random number but a fare multiplier could be found)) would predicate how pay is done within the company insuring that employees are paid a fare wage for the earnings brought in by the company.
I also believe we should tax the highest earners (the 1%) at near 100% above a certain dollar amount allowing a very generous tax break for money reinvested in new domestic companies. This would encourage the ultra rich to invest more in building new American business creating more jobs.
Tax cuts alone currently most often go to savings not reinvestment. An example, above 50 mill a year tax at 100%, if they earned 150 mill, if the person invests $80 mill of the $100 mill they would have been taxed at 100% they would be able to write aff the whole 100 Mill, pocketing 20 mill. Instant investment with great potential for increased job growth.
Last, foreign workers will always be needed. Laws should insure any foreign worker is paI’d above the average pay for the job they do and that the workers pay be based on the highest paying job the worker does no matter how little of that job they do.
Bring in a foreign worker to flip burgers 38 hours a week and program for two and you would need to pay a programmers wages for the entire 40 hours. Since the pay must be greater than the average programmer pay for your company, if you have more than half your programmers in the company as foreign workers your average pay would go up every year causing you to need to increase pay further each year For those workers. You would need to have half your workers be domestic workers, actually more than half, or your payroll would get out of hand. Ergo, an automatic control on total foreign workers.
There would be exceptions, such as migrant farm workers, but for technical jobs this could reduce abuses of worker visas to bring in foreign workers to supplant domestic workers At lower pay.