I've applied to about 17 software engineering internships starting from about christmas time and ending today. I haven't heard back from any of them. Is it because it's been christmas/new years and people aren't working? Is it because I suck? How long do employers usually take to review a resume and get back to you?
Is it because it's been christmas/new years and people aren't working? It depends on a variety of factors, especially whether you applied to public or private sector companies, whether they are startups or have a structured yearly internship program. Usually it runs on the hiring manager's whim. Things also slow down around this time of year especially recruitment.
How long do employers usually take to review a resume and get back to you? However long they like. Seriously, interns are the lowest common denominator. A manager has many duties, and sifting through hundreds of resumes is an unappealing one at that. Be patient and realise that many other people are in the same boat as you. You'll be fine.
It could be the holidays. It could be that your resume isn't good. But it is most likely to be that it is for an internship. For internships, companies tend to have a cycle (and it usually hasn't started yet.)
Step 1 is to collect resumes. Step 2 is to look at the collected resumes. The key is that step 2 starts on some planned timeframe for that companies. Then they do phone screens or interviews.
So don't worry, I suspect most of the companies are in step 1 and you wouldn't have heard back even if you were the best candidate ever.