Where to apply for an MS in Computer Science with a badish GPA (~3.2)?

Currently I’m an undergrad at UC Berkeley studying Computer Science, and my GPA is ~3.2 which probably puts me out of reach from any top 10 grad school. So I’m wondering what kind of schools I should be looking at?

I’ve taken a bunch of classes (data structures, algorithms, architecture, OS, networks, stochastic processes, AI, ML, statistical inference, compilers, signal processing, security, and some math courses) and have participated in research for a very well known lab (will hopefully eventually get my name on a paper if all goes well). My research is in distributed systems. I’m open to concentrating in a lot of areas though, and obviously ML/AI etc is super competitive so that’s probably out even though it would be interesting.

Also my GPA is mostly just super low because I’ve taken a really heavy workload every semester so far (3-4 technical courses + research)… and Berkeley EECS curves courses to a B- average as per policy.

So my questions are:

  1. Where should I be looking to apply (really for any area in CS)?
  2. Do grad schools take into account the grade deflation of undergraduate schools?

Some programs, if they have many, many applicants will do an initial cut on GPA and GRE scores but less selective programs (fewer applications) will look at all the applications and pay particular attention to your letters of reference and your accomplishments in research. Most will have a minimum GPA of 3.0 so you should be fine at these schools.

Another way to get past a first cut is to have your research mentor(s) make personal contact with faculty they know personally.

So, your question is where do you apply?

My suggestion is to apply to several programs you would love to go to but might be in the very highly selective group and about 2 programs where you are likely to get in and you would be happy to attend. Choose them based on recommendations from your research mentor(s).

Thanks for the reply –

How can I gauge what schools I’d be competitive for and which I wouldn’t be? Is it as simple as looking up the rankings and partitioning it at some point (say, #40 and onwards could be more likely to get into)? I’m just not really sure how to start my search, what schools I should be looking into etc w.r.t a strong CS program outputting valuable research but with a less stringent admission policy.

I think your research mentors will be the best advisors for this. They know you and can tell you where you might do well and be accepted. There are so many programs that simply looking at a ranking will not help you find the school that will meet your needs best. You can cut down the possible schools by first deciding what kind of school you might like best, public or private;

Also, a 3.2 isn’t “super low.” It’s a good GPA. I’d still give it a shot at a few highly selective programs - you’ve got nothing to lose (other than the application fee, I suppose, but consider it an investment.)

I assume people are aware that Berkeley is a very tough school. 3.2 there ain’t the same as 3.2 at Stanford. Get good recs, do research, figure out your research interests, etc., and you can get in somewhere. Does somewhere mean top 10? Maybe not. But you should still be able to get into a top 50 school certainly. Do well on the GRE too.