Table of Contents
- Admission part one: application
- Admission part two: interviews
- Event breakdown
- School comparison
- Random rambling
There are amazing resources for deciding whether or not you should do a PhD, and some of these resources also describe how you should go about doing one. Some examples which influenced me heavily are Mor’s grad school talk and Guo’s PhD memoir. There is also great advice from Dave’s blog on what different research areas tend to value. With that said, there are not as many resources out there for how people are deciding between graduate schools. I am very fortunate to have met Andy, who gave me valuable life advice and a lot of support over the past two years. I hope that this will help other students, especially other first-gen students who are also winging it as they go, in navigating the whole PhD application process. I think the most important thing to know is that preparing to apply to a PhD program starts early. I see people who know what they are doing start as early as frosh fall. The latest time to start and still be competitive is probably around junior fall.
This document is mostly jumbled thoughts on visit day formats and on the CS PhD program structure at Carnegie Mellon, Stanford, and UC Berkeley. Note that this is a mostly sanitized version where sensitive information from private chats has been stripped out; if you recognize something that you told me and would like for it to be removed, please let me know by email.
Note that I also had the pleasure (?) of being in the first group of students to experience a virtual visit day format for Stanford and UC Berkeley. I attended CMU visit days in person. This is the second time that coronaviruses have affected my choice of educational institution.
Finally, your mileage will almost certainly vary. I applied for CS PhD programs in systems, specifically for databases. I have pretty average grades for a grad school applicant (around a 3.6/4.0), some research experience (one VLDB coauthor), some industry experience (Amazon Aurora), and perhaps a slightly less conventional background (chicken farming was brought up at least twice during visit days). In my opinion, the bulk of my application was carried by my letters of recommendation, for which I am very grateful.
Admission part one: application
The first surprising thing I learned was that the Letter of Recommendation (LOR) deadline is not strict. You are fine as long as your LORs get in before the admissions committees meet. However, unless your professor knows when those deadlines are, you will probably still want to make sure that everything is submitted on time. Typical advice is to ask for letters at least two months ahead of the official deadline, and to ping them every couple of weeks thereafter. Mor’s guide has good advice on how to ask for a LOR - importantly, make sure that you give people a chance to say no.
Where do you find LOR writers to begin with? In my case, my advisor helped a lot. One thing that Andy does is immediately ask people who want to work with him: what are your plans, industry or grad school? From there, he assigns projects accordingly and guides you along the process. I am very grateful for this. I know of multiple people more capable than me who were essentially unlucky with their choice of advisor, (sometimes multiple times!), and this tanked their grad school applications and in some cases aspirations entirely. You can minimize your exposure to luck by getting to know students and other faculty. In some cases, you may need to read between the lines.
Moreover, the stakes are different depending on the research area. For example, I have heard of ML programs that flat-out reject anybody without a couple of top conference publications. I would recommend trying to find out the average profile of an admit and stalking professors on Twitter to learn more.
Admission part two: interviews
Interviews are part of the application process. After the admissions committee meets, a few professors will reach out to you to talk.
From my understanding, there are two types of people who do not get interviewed:
- amazing accepts - great GPA, great LORs, way more publications than the average applicant in that field
- definite rejects
I think most people can tell if they are the former. I am most certainly not, so the interviews determined whether I entered the accept pile or the reject pile. I entered the waitlist/reject pile for MIT (same rules as undergrad, waitlist is essentially reject). It is also generally a good chance to determine advising style and/or advising project fit.
Typical interview questions:
- Tell me about some research you have done recently, with an emphasis on your contribution.
- What do you want to do in grad school?
- Why do you want to do grad school?
Side-note: There is a lot of machine learning in systems nowadays (systems for ml, ml for systems). I am not personally a huge fan of this, especially given how sensitive everything is to hyperparameters. I wish the field focused on provably sound gains, however incremental that may be. But this is just a note to say that you should be ready to talk about your field’s buzzwords of the day.
Once you are admitted, every school has a visit day. This is a chance to look around the campus, talk to professors, (important!) talk to the current students, and to figure out what everyone’s priorities are. Given that you get a reimbursed flight to the university, and that you will be spending four to six years of your life there, you might as well go.
Visit days themselves are generally highly structured, and you will be spending most of the time talking to people or taking part in social activities. I think most visit day programs have a similar structure. Broken down by event, here are some quick thoughts that will be elaborated on later below. This is a good time to remind the reader that CMU visit days were in person, whereas Stanford and UC Berkeley were virtual Zoom calls.
- Department Welcome
- I find this to be an interesting data point for what the department at a high level tends to value. Generally broken down into an “our school is awesome and these are our inventions and Turing awards” and “ok here’s what you actually need to graduate with a PhD”.
- If I recall correctly, Berkeley did not have the second part, which I found a little strange. In general I find it weird that schools bother with the first part at all.
- I would say that CMU was the most student-focused here, emphasizing the good student-faculty ratio and the various safety mechanisms employed (Black Friday) to keep students on-track.
- Area Chat (Systems)
- All of the schools will do a casual chat where every professor that is looking for students will talk about their current research. This is a great time to listen to what people are working on and to figure out what you might end up doing there.
- Berkeley notably had an additional area-specific faculty AMA panel which I really enjoyed. This was a more casual “what do you do for fun” “what is your favorite supermarket” kind of thing.
- Student chats
- This includes both the Slack channels and the individual chats.
- CMU: A couple of meetings with students and a post-dinner social, otherwise N/A.
- Stanford: Very proactive student-organized slack. Zoomed with all of a professor’s students at once.
- Berkeley: Student-organized slack. Zoomed with a few students from different professors one-on-one.
- Stanford had the most frank and real discussions with students, with topics ranging from the cons of the rotation system to the less peachy parts of PhD life.
- COVID response
- Carnegie Mellon: Received an email about starting PhD programs in the summer to help international students avoid having to leave and re-enter the United States.
- Stanford: Received a folder that reassured us that all flight cancellation fees would be taken care of, which I really appreciate.
- UC Berkeley: Offered to pay for the hotel for anyone stuck in the area, but reimbursement information was a little more tepid. I imagine that being a public university makes it more difficult though.
I like how each school naturally “won” at something, so I won’t feel awkward about putting this online. Anyways, moving on…
The stack grows down, just like my beard. – stackgrowsdown
In the OS class at CMU, the use of a design matrix is emphasized over a simple pro-con listing. A design matrix clearly exposes the metrics that are being used to evaluate and justify action selection. This is an excellent idea that we should teach in the core curriculum, but anyways..
I will describe the metrics that matter to me, ordered roughly from most important to least important.
- Advisor match, very important. Note that (perceived!) advising style is very subjective. I generally want a lot of supervision to begin with, but once I find something interesting, I tend to dive down rabbit holes in bursts unsupervised. My current conversion rate on advisor time, self-developed and not a reflection of CMU, is that I will spend about 2 hours on something that blocks me before I ask a question. More important to me than advising style, I need to have the general belief that my advisor is a great person or more generally that their heart is in the right place.
- Cost of living, very important. Somewhat uncharitable descriptions of Wan have included “Wan survives off free food” and “Wow. You’re wearing something that isn’t free?”. I am fortunate to not generally have known true hunger in my life, but I have had experience with stretching the typical student meal budget to a month’s food budget. Additionally, I am also trying to save money for people that are not myself. That said, I have lived with roommates and housemates for over 8 years now, where experiences varied from alright to highly unfortunate. Cost-permitting, I would really like to live on my own.
- Subject matter, important. I am generally interested in most of the fields of CS that I have been exposed to. I do not think I have the patience for PL or the stomach for hard theory, but I believe there is something to be learned from everything and in particular everyone – this seems to be especially true in systems, (quote about reinventing everything every 50 years here). However, I am also under a government scholarship bond, and little countries do not have the resources for hyperspecialized research. My inclination then is to prioritize research that can make it to production, so to speak, and which can ideally benefit either the public sector or the small tech places in the world.
- Progress tracking, important. What exactly does it take to graduate? How does the school measure your progress, and what happens if you slip up? I intentionally leave daily life unplanned, but I have always obsessively maintained a few 1-year, 5-year and multi-decade plans in my head. Someone once joked that I could be an academic advisor since I had the graduation requirements and common student opinions on courses essentially memorized. Given that context, I place some importance on schools being upfront and clear about what it takes to successfully complete a PhD.
- Work-life balance, a little important. I would be a little bit cautious of advisors who seem to be grinding all the time. I think it is important, or at least very nice, to have advisors who will relax and chill every now and then. With that said, I think it is always a matter of tradeoffs. Last semester was probably my most tiring semester at CMU. I was operating on three hours of sleep on average per day for a month. In exchange, I maintained the bandwidth to support various friends, got to learn about a completely new subfield of theoretical computer science, maintained my TA responsibilities to a somewhat satisfactory standard, and scraped by in all my other classes. The first is non-negotiable. The second was exciting and probably the most fun I have had in a while. The third is basic job responsibility, and the fourth is a basic graduation requirement. The way I view it, these tradeoffs were worth it. So some grind is certainly justifiable; more succinctly, everything has a price.
- Program structure, a little important. As a Berkeley prof points out, most of us got here through our test-taking ability (possibly at the expense of our long-term retention). In my opinion, that skill generalizes to optimizing against arbitrary program structures. Are prelims necessary? Then study for the prelim, just like everything else. Take six courses, take eight courses? If other people can pass, so can you. Whatever the course, examination, and teaching requirements are, they should not be a significant hurdle.
Now for the design matrix itself.
|Metric||Carnegie Mellon||Stanford||UC Berkeley|
|Advisor match||Very strong advising style match. I love being around Andy and his research is very uniquely systems focused.||Uncertain about advising style match.||Strong advising style match, (also because it looks like everyone is your advisor).|
|Cost of living||500 for a room, 1000 for a studio.||1350ish for a room, 1700 for a studio.||1200ish for a room.|
|Subject matter||Uniquely systems-focused.||ML + DB.||Fascinatingly interdisciplinary.|
|Progress tracking||Lots of monitoring.||Minimal monitoring.||Some monitoring.|
|Work-life balance||Andy is awesome.||No data.||Faculty AMA radiated a chill attitude.|
|Program structure||Courses, funding guaranteed.||Courses, exams, may have to teach your way through.||Courses, exams, may have to teach your way through.|
And, in more detail,
- Advisor match / subject matter
- Carnegie Mellon: Being around Andy is great and he cares about deep systems research.
- Stanford: I really like the work that Peter does in “porting” theory results to systems.
- UC Berkeley: I am particularly interested in Alvin’s PL work, but the entire DSF group does really interesting stuff and I think they are easily the most collaborative group I have met, so it really feels like you can get involved in anything you want.
- In terms of advising style, usually it is a mix of how hands-on/hands-off you want your advisors to be. It seems like Stanford is more hands-off as a general rule, at other schools it depends heavily on your advisor.
- Cost of living
- Carnegie Mellon: Pittsburgh is cheap. To quote Overheard at CMU, “PhD students here dine at the finest restaurants in Pittsburgh, which was something I couldn’t imagine doing when I was a student (at Stanford).” The quality of the housing and of the produce is not as good, and the variety of food here is not too great either, but it is very cheap compared to California.
- Stanford and Berkeley are in California, so they are more expensive by default. Higher quality and more variety in stuff to do and stuff to eat. Stanford is less walkable than Berkeley and looks slightly more expensive too.
- Progress tracking
- CMU: Black Friday. Twice a year, the faculty meet twice - once for subject area, once with everyone - to discuss each individual PhD student’s progress. You get a letter with feedback and suggestions for the next semester. Good safety valve for identifying and addressing advising issues, etc.
- Stanford: From my understanding, you make progress and are in good standing as long as your advisor thinks so.
- UC Berkeley: There is a progress review process between the student and advisor, and the student submits written feedback to the department.
- Program structure
- CMU (semester system)
- Teaching requirement: Teaching assistant for one introductory course and one upper level course.
- Courses: 6 courses, at least one from each area (5 areas).
- Exams: No exams.
- Financial support: Funding is guaranteed. Even if your advisor loses funding, you do not need to teach to get funded.
- Advisor matching: Come to CMU and find your permanent advisor ASAP.
- Stanford (quarter system)
- Teaching requirement: Any combination of 25% and 50% Course Assistant to reach 100%.
- Courses: 13 courses of which you pick 6, at least two from each area. Can appeal for courses to be waived if you have taken similar courses in undergrad.
- Exams: Sit for your area’s qualifying exam.
- Financial support: Everyone gets the same financial package. There are three ways to get it, (1) research assistantship (2) course assistantship (e.g. 2 x 50%) or (3) internal/external fellowships. Stanford CS doubles your summer pay if you stay.
- Advisor matching: Rotation system. In the first 3 quarters, you are on rotation. This usually means doing three one-quarter rotations with different faculty. While on rotation, the rotation faculty and the department are funding you. Thereafter, you are funded by your long-term advisor, who you should have picked by the end of year 1 May.
- UC Berkeley (semester system)
- As noted above, I do not remember them talking about this in depth. However, they have a nice webpage.
- Teaching requirement: 50% GSI twice or 25% GSI four times. Generally advised to do the 50% GSI twice.
- Courses: 24 units (12 units major, 6 units inside minor, 6 units outside minor). Can appeal to transfer at most 12 units.
- Exams: Two exams, preliminary and qualifying. Preliminary exam, a subject-specific oral exam testing you on the foundations of the field which seems pretty intense. Qualifying exam, produce a plan for your dissertation.
- Financial support: Same as Stanford. Most people are on research assistantships too, but some people may need to teach their way through.
- Advisor matching: You enter with a temporary advisor until you find your permanent research advisor (about a year).
- CMU (semester system)
A lot of my decision-making process was shaped before any of the visit days, based largely on student hearsay. Visit days were an opportunity to talk to people – and in particular to read between the lines; if you are a prospective admit, make sure you do that – to confirm, reject, or otherwise update my beliefs. Visit days are also a great opportunity to hear a preview of what really interesting work will come out in the next decade or two.
I had an extremely strong prior which saw me staying at CMU. I like it here. The weather is not that bad, and I am very fond of small town living. My ideal living situation involves knowing all my neighbors and grocers, though that unfortunately does not happen in Pittsburgh either. Beyond PhD specific things, some aspects of the CMU administration drive me up the wall, but I believe that SCS specifically has strong leadership, and caring faculty and staff who focus on the right things.
I am also very stubborn once I have made a decision. It is not something that I am particularly proud of, but it is generally true of how I operate. When I have made up my mind, I generally only allow clear factual evidence or very close people to convince me otherwise. There are currently only four people in my life with that level of sudo access.
Given that, I think it is a testament to how strong, collaborative, cozy, and diverse the DSF group at UC Berkeley felt. I acknowledge that if I had visited the DSF group in person and much sooner, I would have had a much tougher decision making process to make. Then again, economic uncertainty leans very heavily towards CMU. I used to earn about USD 275 a month working 40 hours a week at home, so the extra wiggle room created by the lower cost of living is a strong factor.
Stanford felt more like a highly independent “it is what you make of it” type of environment. That works really well for some people, but I do not think it works as well for me.
Also, while as a student I am thankful that I have no prelims to worry about, I agree with the general Berkeley argument that the prelim-preparation process produces strong well-rounded people. I will chip away at their reading list on my own time.
CMU it is! Assuming my government will allow it.