H1B is just about specialized (skilled) professions like engineer or nurse or designer or manager.
Lottery is because of oversubscription for h1b.
Oversubscription if because of poor oversight (that leads to rampant fraud), and low number of visas that have not kept up with demand. I think it was 85000 new visas per year for several decades.
Removing fraud, improving oversight, and increasing limit will fix h1B, but there is a bigger question: Why should Americans compete with the whole world for domestic jobs?
For some reason it is considered normal to protect American Capital by imposing tariffs on foreign goods, and at the same time there are no protections for American Labor.
Anyone can come in and just apply for jobs, get work visa and steal a job from an American citizen.
If American Labor is subjected to unchecked global competition from global talent pool, then so should be American Capital. No tariffs in Chinese EVs: let American consumers buy Chinese EVs for $10,000 instead of paying Elon Musk $45,000