After numerous conversations with students applying to CS graduate school from foreign countries (especially India and China), I decided that many of these students do not understand how the admissions process for Computer Science graduate schools in the US works. This is not that undergraduate students in the US know how the system works, it is just that they can typically ask someone locally for good advice.
This is a collection of advice I have given other students and is completely my opinion. Please do not take any of this the wrong way, as some of this can tend to sound obnoxious or self-centered, but I can tell you this based on my own experience of looking at more than 1000 applications to grad school. But still, this is just my opinion.
The bottom line is that what admissions people are looking for is a reliable assessment of whether a student can/wants to do research. There are several indications of this, in this order of importance:
1) Demonstrated research ability. This means published papers in major, international conferences (and journals). IEEE/ACM/USENIX conferences. Publishing in local conferences is not helpful. Publishing in Chinese language journals/conferences is not helpful. Not all conferences are created equal. Also, perhaps internships at very well known research labs (for instance MSR) are good stand ins for this.
2) Letters of recommendation from internationally known academics. There are a few academics at the Indian IITs that are well known in some fields. This means that although letters from your college are required, they may not be very helpful if the person who wrote it is not known in the US. It is very well known in the USA that foreign students often write their own letters and have professors sign them. This makes them mostly useless, unless that person is internationally known and trusted to write their own letters.
If you worked at a company (such as an internship or job) a letter from someone at that company will be necessary (to show that you didn’t mess up when you were there), but it will carry less weight than academic letters. They also may not want you to leave and may not have your best interests at heart. Talk to anyone writing you a letter first and see what kind of a letter they will write.
3) A clear statement of your research interests and skills. Do not begin with: “The first time my parents brought home a computer, I knew what I wanted to do with my life”. This appears in 50% of all applications. Another 30% begin with some awful, sappy analogy to climbing mountains, playing chess, etc. The other 20% are useful. Be short and to the point. Briefly describe your prior experience, and specifically talk about what kind of research you want to work on. If you have a lot of work experience, you can talk about how you can draw on that experience to fix problems. Read a few papers to get some good ideas. For each school it is helpful to name a few professors who seem to be doing research you are interested in. That way they will read your application. Be careful not to send the wrong statement to the wrong school, I have seen that more times than I should.
4) The college you went to. Americans have traditionally been pretty bad about tracking which are the best Indian/Chinese schools. They definitely know the IITs, Tsinghua etc. but are slowly getting better at knowing the top 15-20 from India and the top 10 from China.
5) Grades/GREs. There is certainly a minimum verbal, but that is usually 500. This is because 1-4 are so much more important than this. Almost everyone has a 750-800 math. Grades and scores do not really tell me if you can do research. You do need to have good grades, but *lots* of applicants have good grades. You need to rise above those people.
A letter from a US academic will probably carry more weight than 1-4. That is just how it is, people want to know something from someone they trust or know.
You should apply to a good handful of places (6-10). The rankings are one thing to look at, but you should: A) Look at the rankings for specific area that you are interested in (for instance if you do networking you should look at the “systems” rankings). B) Don’t believe the rankings. Look at the research that is going on at the places you want to apply to, see if those people are publishing in good places, and see if you might want to work with them. I can tell you that there are many places that are clearly ranked way above their abilities for absolutely no good reason.
Many students from India and China will write professors asking if they can get in, or if they are taking students. They will almost certainly never answer you and it isn’t very helpful to write them. I get piles of email from India and China and I ignore almost all of it. We have 700-800 students applying each year and we take <70. After you are accepted, you *should* email professors asking about working with them etc. At that point, they should be willing to talk to you.
Applying for an MS degree and not a PhD says: “I don’t really want to do research for very long, really I want you to help me get a job in California” Some places will admit you anyway. UMass now has an MS program for especially talented students. Nonetheless if you are serious about doing research, a PhD program is the best way to go.
After you get in:
Don’t go anywhere that doesn’t give you guaranteed funding for at least the first year. This will include free (waived) tuition and fees and a stipend that will be $20-25k/year. This is enough to live a comfortable student life in most places in America. Pay attention to how much health care costs, it can be rather expensive, but the “student” health care is usually fine. Some places, for instance some unnamed top schools, will admit lots of students with no money. Do not be lured by a big name school that has no money for you. That is a huge mistake.
Think about where you can live in America (city vs rural, midwest vs coastal). Foreign students don’t usually know anything about American geography, nor do they usually care. That is probably a good policy. This can be more important to domestic students. If you have a family/kids you should look at what kind of support the college has for housing, health care, child care etc.
That should about cover it. Yes, you should apply to UMass, but no, I cannot make any promises, nor can I really estimate whether you would get in. There are just a lot of variables at work.