Google and Facebook are not employing the vast majority of H1B workers, the large BPO consulting firms like Wipro, CapGemini, Tata, Infosys, and Cognizant are (Source:
http://www.myvisajobs.com/Reports/2017-H1B-Visa-Sponsor.aspx). Just because Google treats their H1B employees well doesn't mean everyone does, it's a small sample.
My experience is more in line with the previous poster. The workers can be terribly treated, at the mercy of their sponsoring company, and underpaid. There is the constant threat that you can be sent back to India at any time if you don't tow the company line. Many of these folks have moved their lives and their families to the US for these jobs, so this is a very serious threat.
We had one extremely talented lead engineer from Wipro that was so overworked from 10-12 hour days in the office and then another 6-8 at home on calls w/his team in India that his hair literally started falling out from the stress and lack of sleep.
Let's not kid ourselves, H1B is a source of cheap(er) skilled labor that the tech firms love because they don't need to invest in training and can exercise a level of control over them. The company can reduce or eliminate the risk that the worker will quit for a better position, unlike if they took a US worker and spent the money to train their skills up. We all know salary is just a small part of the overall cost of recruiting and retaining talent.
Personally, I'm in favor of opening up the restrictions on immigration. I believe that immigration and growing a country's population is essential to the long term viability of a nation. From my personal experience, I've seen that the H1B program has been abused and distorted to the whims of the big consulting firms at the expense of the workers in the program.