I've been really lucky, straight out of university I've managed to only work with startups. I've had the opportunity to work with a few startups to get them to a first release [I graduated and moved to Germany helping startups as a contractor].
But generally, working for startups isn't mentioned as an option to students at any point during their course. This is perhaps an issue with university faculty, they probably assume it's not an option since they don't have any contacts to any startups. Placing a call to Microsoft recruitment is easy.
Another reason might be an issue with the education students receive at university, I feel as if only 10 students out of a class of 120 people will know how to program correctly. Startups normally want people with lots of knowledge in many different areas, they don't want people who only know how to do certain things; Hiring a graduate who can only code HTML isn't normally an option for startups since they need the most out of the little money that have.
Until at least 50% of a graduating class are able to perform in multiple areas, backend, front-end, perhaps mobile in multiple languages (they don't have to know them amazingly well, but enough to program efficiently whilst checking documentation – when needed!), startups aren't really an option for most graduates. You would be amazed at how many students can't debug problems in their code, because they're taught to just copy code they find on the internet or on some sort of Blackboard style intranet app.
TL;DR: Students graduate with piss poor skills and until more students graduate with the needed skills, they'll never find themselves in a startup.