How to pick a grad school for a PhD in Computer Science

Vijay Chidambaram
4 min readMar 2, 2018


I’ve been giving this advice to a number of students over the past few days, and following Matt Might’s advice, I’m penning this down quickly as a blog post. All the advice is based on my own personal experience doing a CS PhD, so take it with a pinch of salt.

Picking a graduate school for a PhD is a tough decision, and one that you will have to live with for 5 or 6 years. It can also have far-reaching consequences for the rest of your life, depending upon how the PhD years go. So it can be confusing to figure out how to make this decision, particularly if you are lucky enough to have multiple offers from a host of good schools. Let me offer a few tips.

There will be a number of factors that impact your decision. The best thing you can do is write them down. Give each factor (for example, weather, advisor’s personality, research group’s culture, etc.) a weight between 1 and 10. Then, as you find out more about each school, score each school along these parameters. The overall score for a school is simply the sum of each factor multiplied by its weight.

The reason this helps is because it forces you to think about how much each factor is important to you. For example, is weather a 1 or a 10 in your scale? How important is research group culture? This will automatically help clarify in your mind which schools you like and don’t like. While this exercise won’t immediately give you an answer, it is quite likely you want to go to one of the schools that come out on top in this analysis. I was given this advice by Prof. Mike Swift at Wisconsin for deciding where I wanted to join as a professor; I think it applies equally well for deciding on a grad school.

So what are the things you should look out for?

Advisor Personality. This is the #1 thing you should be looking for. Unfortunately, if your professor is not awesome, it does not matter if the university is awesome. You will be miserable, and likely drop out or do a bad PhD. How do you figure this out? Talk to their students. Talk to other students in their department who don’t work for that professor. If the students are not enthusiastic in recommending you join the group, don’t! Most people will not come out and say directly the professor is a jerk, so you have to infer it from lack of enthusiasm.

Advisor Enthusiasm. A PhD is apprenticeship. As such, you want your advisor to be enthusiastic about taking you on, and they should absolutely be reaching out and encouraging you to join their group. They should be sharing what they are working on, and arranging meetings between you and their students. I do not recommend joining departments where you are just a head count, without a specific advisor who is enthusiastic about you. It is easy to slip through the cracks for a PhD, and you should start it only once you have an advisor lined up. I do not buy the “join the dept! figure out an advisor later” strategy.

Advisor-Student Personality Match. Different students need different kinds of advisors. Some students need lots of attention and interaction to be productive (most junior students fall into this category). Some students like going off on their own, doing a bit of work independently, and meeting their advisor once in a while to recalibrate. Figure out which kind of student you are, and what kind of advisor you need. Make sure you and your potential advisor are on the same page as to how much time they can spare for you.

Research Group Culture. Every student requires a different kind of culture to thrive. Many students prefer a culture where collaboration is encouraged, and students work together on projects. Some students prefer a culture where each student is independent and works on their own. Figure out what you want, and what the culture of the group is like. Every research group will claim to be collaborative; look for evidence based on shared authorship of papers, collaborative on-going projects, and whether the students seem to be friends with each other (versus merely tolerating each other). I’ve heard of (very productive) research groups where students are hesitant to voice their ideas because others will steal them; try your best to avoid places like this.

Location. The most productive PhD students I knew also had a healthy life outside the research lab. Your hobbies might dictate the kind of location you want to be in. Do you like outdoor activities? Do you like concerts? Pick a school which allows you to continue your hobbies. This will contribute heavily to your happiness.

Weather. Some students can thrive in any weather. I personally like being in places where there is a lot of sunlight (even if it is cold). Figure out what you need weather-wise, and give it an appropriate weight in your analysis. Don’t disregard the impact of weather!

Finally, in picking between two equally good schools, go with the place where the students seem happier. Congratulations on your admits, and good luck with the decision! :)