People who go out of their way to take internships at unconventional companies are disproportionately likely to be awesome team members.
People who call themselves "interns" are much more likely than a "seasoned" pro to expect to spend time learning. The gradually increasing disinclination to learn new stuff is the technologist's apoptosis. It happens to everyone, but makes people who think of themselves as students interesting to work with.
Interns are cheap, but "internship" is so temporary, and the pay scale of an intern has so little to do with their FT comp --- wait, it has zero to do with their FT comp --- that cheapness isn't a meaningful motivator.
We do internships year-round. We don't require people to be currently enrolled to do it.
What are in your opinion the skills that an intern must have to get a position? It is normal in the US to consider foreigners for an intern position?
http://www.inc.com/magazine/20070501/column-guest.html (This is a reprisal of an old JoS post that I can't seem to Google at the moment.)
Finding Great Developers
http://www.joelonsoftware.com/articles/FindingGreatDeveloper...
One of the good things about working at a startup--even for an intern--is that there is always enough interesting work to go around.