As the person would need to wait for a long time (several months to years) to get an H1B visa before s/he can start working in US. Usually not many companies would be interested to wait for long time, which is understandable.
However, I have seen many IT companies applying for H1B visas. Do the companies usually hire the foreigners already living in the US (eg. on F-1 visa) or is it a common practice to hire a candidate from abroad too ? (for example, a software developer with a ~5 years experience).