For Students‎ > ‎

Undergrad Advising

Greetings awesome undergrads! If you're reading this, it's likely because you are one of my advisees and I've sent you here to get some background info before coming to group advising. Here's a preview of what we will discuss during the group meeting.

Some of this is based on great advice from Prof. Dan Garcia.

What happens in advising stays in advising

We'll talk about courses, grad school/industry, and more. Nothing you say in this room leaves the room, so if you have candid advice for your colleagues on who or who not to take a course with or anything like that, this is the place.

We'll start with a round of introductions—name, year, what you want to do after graduation: Grad school? industry? startup? what area(s) of CS most interest you? 


HKN & EECS are great resources to figure out which are the best courses, as are your fellow students. I'm happy to try to answer any course or instructor related questions I can. But for each question I'll call on someone in room to see if they know that course/prof and want to offer first-hand advice. If they want, I'm happy to shut my ears. 

We'll talk about any new courses or format changes that may affect registration for the coming semester (enrollment limits, prereq changes, and so on).

Do you have one or more "academic soulmates"/buddies/teammates who pair on homeworks or work in group projects with you? Many students have found this a key to enjoying and thriving in tough technicals.

Allow for lots of time in your schedule when  taking the courses that will matter most to your career. Whether for grad school or industry, you don't get credit for taking lots of courses, but for doing really well the things that will be central to your job or research. For grad school you do need a strong GPA (for better or worse); for industry it really doesn't matter.


Getting involved in research as an undergraduate is a great way to explore whether you might be interested in grad school, to work on leading-edge projects, to get more depth in an area of CS you're interested in beyond anything you'll get in regular course work, and more. Most faculty are happy to work with strong undergrads and most colleagues I know do so. I’ve put some info about it here.

The most important aspect of both getting and keeping a research position is a strong sense of initiative and ownership. I've put together some advice and guidelines you can take a look at as a start before you reach out to faculty.

Grad school

Thinking of grad school? Advice we'll cover includes:
  • Apply broadly, as grad school admissions are v ery competitive; "hot" fields like machine learning and data science may be harder to get into. Don't limit yourself to the "usual subjects" list of top schools: talk to professors and grad students working in your areas of interest to find out which programs are strong in that area—you'll be surprised.
  • Have you tried research? If not, why do you think grad school is the right thing? And you can always work for a couple of years and then decide to go back (that's what I did). Grad school is an intense 5-year monastic experience that is nothing like undergrad. It's more a calling than a thing you do. You really want to be sure that this interests you, as opposed to doing it "by default".
Don't be afraid to take the initiative to connect with faculty and engaged in research: just taking the initiative already sets you apart. Use Beehive to find listings or email faculty directly.

5th year MS

This program is a great opportunity for EECS undergrads, but you will be expected to work on some research and you need a faculty champion who will agree at application time to be your advisor if you're admitted. I and many other faculty will only do this if we have already worked with you for at least a semester prior to your application process.

In practice, 3.5 GPA is approximate cutoff for 5yr MS; 3.75 is not uncommon. The program is very popular and EECS is trying to grow it.  

Teaching-focused 5th year MS

If you are focusing on teaching and/or CS education, there are some extra slots available in those areas, assuming your potential advisor works in this area and would be willing to supervise your MS work in this area.  In other areas, GSI support for 5th year MS students is by petition only—otherwise your advisor is expected to provide GSR support if possible.

You must finish by end of spring term the following year, so assume you'll be starting work during the summer before your 5th year, or you may find it tough to get in all the coursework and the research in Fall+Spring only.

Masters in Engineering (MEng)

This program has a 7%-20% admit rate, 12% averaged across areas (comparable in competitiveness to PhD admissions!) and demand is nearly doubling every year for admission to EECS MEng. EECS is investigating how to grow the program.

If admitted, you'll take 6 units of leadership-related courses from the Fung Institute, 6 units of graduate-level EECS courses, and a 5-unit capstone/integration project.

Follow-up advising

I'm always available to do followup one-on-one appointments with my advisees! The following may be helpful if you want to schedule one:
  • While I'm happy to discuss specific courses/profs, HKN reviews and your own colleagues are more reliable sources of that info. I can add more value in advising you on which courses might be most relevant/valuable for you to take given your career plans, intellectual interests, and so on.
  • Career advice gladly given. But please come prepared with focused questions. Rather than asking "What should I do after graduation?" you might try "After graduation I'm considering working for a startup vs. going to grad school. Here's what I think the pros and cons are so far, but I'm having trouble deciding. What do you think?" In general, as with programming, you learn the most if you get as far as you can until you get stuck, and then seek help in the form of feedback on a well formulated initial question!
Looking forward to meeting you f2f in advising...