True. But they are vacancies which means not enough Americans want the job. If every position was filled, they would be looking elsewhere.
Again, pay American wages and Americans will do the jobs. If any openings, then the issue is wages are too low, company not making effort to recruit and hire Americans. You get what you pay for and want. I’ve hired over 500 people in last couple of years and know this point explicitly.