Cornell CS Research README

The Definitive Guide to Finding Undergraduate CS Research at Cornell

Research Connect
19 min readMar 4, 2019

Cornell is a top-tier research institution, so it would make sense to want to get involved. We’ve talked to undergraduates who found research, professors who take on undergraduates, and PhD students who actually manage the undergraduates in a lab. From this information, we’ve compiled a guide on everything you need to know about finding research at Cornell.

Brought to you by ACSU, DTI’s Research Connect, and advice & edits from Matthew Milano

Table of Contents

Flowchart Overview

If you’re in a rush, here’s a nifty flowchart to help you quickly determine roughly what action you should take. (Full size)

Click here to view a downloadable version that you can zoom with

Should I Do Research?

Photo by Oscar Nord on Unsplash

There are some fairly common reasons students do research here:

  1. Interest & Learning: The most important reason that all students should harbor before they commit to doing research. Maybe you took a class with a professor, absolutely loved it, and once it finished you were wondering “What now?” You could email that professor, ask if they have any openings, and if they do, potentially further pursue your passion.
  2. Credit: You’ll usually get three credits (letter grade) doing research. For some, this is an enticing opportunity, especially when compared to taking another course that may be less interesting.
  3. Money: Hourly pay varies but averages $10 — $20/hour. However, pay for research is quite rare.
  4. Résumé experience: It’s totally OK to want this, just make sure you also have reason #1… It’s hard to commit to 10 hours a week to and feign interest in “Secure autonomous cyber-physical systems through verifiable information flow control” if you don’t really like it.

Keep in mind that most students do research for 3 credits, which is ~10 hours/week.

When to Start Looking

So you’re set on doing research and want to know when to start emailing.

First off, you can start research Fall, Spring, or Summer, so no one season is right or the only one “allowed”. In reality, while emailing 1 or 2 months before the start of the semester may increase your chances, you can email for research any time; the only variable that changes is when you ask to start research.

If it’s less than one month into the semester you want to do research during, or if the semester you want to do research during hasn’t even started, then you can safely email asking to do research during that desired semester.

If it’s over one month in, then don’t panic; faculty and grad students can take students almost any time. While this doesn’t apply to all labs, even if it’s late into the semester you can still petition to add research without a problem most of the time. Given this, even one month or more into the semester you can still email for research during the current semester; just mention that you’d like to start research this semester but are okay with starting it in the next, and worst case scenario they tell you to apply next semester. You’ll also have already demonstrated interest with the professor, which will help when they consider you in the future! (Note: joining labs after one month in may only apply to reduced credits or hourly-wage opportunities).

Just a note: if it’s the Spring and you’re applying for opportunities in the Fall, students have reached out anywhere between the middle/end of the Spring semester and the beginning of the Fall semester and successfully found research, despite the big Summer gap in between.

If you want some empirical insights, we asked students when they started reaching out and found that the average student reached out 1.7 months before the semester began, while some students were able to find research once the semester already began.

The average student contacted professors 1.7 months (median = 1 month) before the beginning of the semester during which they did research.

Four Methods to Find Research

Method 1: Go to a Professor in your Class After Lecture (Recommended)

Arguably the most effective method. If you’re taking a class and you really like both the professor and the content, then this method may be for you. It’s very straightforward: prior to class read about the professor’s research and a couple of their papers. At the end of lecture, mention that you really like the course content and then some specific part of their research that you like. Then finish by asking if they have any undergraduate openings. They’ll either say there are no openings or schedule a time to meet in their office.

WARNING: A lot of students assume that a faculty’s lab research will be just like what they teach, but that’s not always the case. Carefully examine their lab page (Google “[Professor Name] Cornell”) and/or papers. Or even better, if you meet with the professor in the scheduled meeting and things are looking bright, ask if you can/will speak to the grad student, since they’ll likely be the ones actually managing you and will know exactly what you’ll actually do in the lab.

Method 2: Go to Professors Office in Person (Recommended)

This is more effective than cold emailing (below), but you have to be comfortable with this.

1. Find a professor whose work interests you. Some resources to help out: Research Connect (lets you filter faculty by area), All Engineering Faculty. Alternatively, if you go to the opportunities section of Research Connect, you can see lists of research opportunities and choose who to email from there.

2. Familiarize yourself with their research. This is best done by skimming a couple of their papers, or at the very least the description of their research on their lab page in the links above or their website (if they have one).

3. Go to them in person. If it’s early in the semester go to their office hours, otherwise go to their office and wait until they’re alone.

4. Ask them about research. Knock, then say something expressing your interest in their specific research and ask to talk more about it. For example,

Hi Dr. <Professor>,

I am a <year> student at Cornell majoring in <major>. <Expression of interest in specific paper or topic>. Do you have time to talk now about your research in <topic of interest> and possible undergraduate opportunities, or can we schedule some other time?

Following these steps in this method should get your “foot in the door” and is much more likely to get professors to respond than a cold email, mainly due to the initiative you’re showing as well as the fact that you’re not sending an email that they could easily miss in their inbox.

Method 3: Cold Email Professors (Less efficient)

Note that the above two methods are recommended because they are typically much more effective than cold emailing. Some professors are fine with cold emailing, while some detest it. After emailing, you may receive a response from a professors telling you to just swing by their office, which brings you back to method 2 anyways. Considering how many emails professors typically receive, it’s not uncommon for your email to go unanswered and leave you wondering whether they’re not interested or just forgot to respond.

With that said, cold emailing is still a popular method and some students have found their position through it, so we felt it was important to include it here:

1. Find a Professor Whose Work Interests You. Some resources to help out: Research Connect (lets you filter faculty by area), All Engineering Faculty. Alternatively, if you go to the opportunities section of Research Connect, you can see lists of research opportunities and choose who to email from there.

2. Craft the Email. After finding an interesting professor who you’d want to email about research, the one crucial component of the email is showing that you’re interested , did your research, and aren’t just spamming the same exact email. Professors have received numerous requests from students to join their lab throughout their career, so they can tell when students are copying and pasting the same email while only changing the name. Instead, focus on including details about their research and what exactly about their research interests you. To find information about the faculty’s research, use the resources in Step 1 above.

In terms of what to write, here’s a great template courtesy of UCSC, with slight modifications. Be sure to use this as an example and not copy & paste, lest you risk having the same email as 20 other students.

Subject: Meeting to discuss undergraduate research opportunities in <topic>

Body: Dear Dr. <Professor>,

I am a <year> student at Cornell majoring in <major>. <How you found out about the professor’s research>. <Expression of interest in specific paper or topic>. I would appreciate the chance to talk with you about your research in <topic of interest> and about possible undergraduate opportunities in your lab [if you plan on obtaining a PhD, append “especially since I plan on pursuing a PhD”].

My experience in <research experience/class/project>, confirmed my intention to develop my research skills and <goal>. I know you are very busy. We could schedule an appointment or if they’re not too busy I can drop by your office hours.

I have attached my resume and unofficial transcript. Please let me know if there is any other information I can provide. I look forward to talking to you soon.

Best,

<Name>

3. Email Them. Send five emails like above to five distinct professors. Your response rate likely won’t be too high, so five is not too many; this can quickly turn into a numbers game.

4. Follow Up (if necessary). If you don’t get a response after two workdays, feel free to send a quick follow-up email.

Hi <Professor>

I know your inbox is a busy place, so I’m just sending a quick follow-up email regarding your research and potential undergraduate opportunities. I’ve copied the original email below for quick reference.

Thank you,

<Name>

<Original Email>

5. Follow Up Again & Send a New Batch. If you get no responses 4–5 workdays after your follow-up, you could try another follow up. It would also be wise to send another batch of five emails (per step 3) at this point.

If you haven’t gotten any positive responses after step 5, repeat steps 3–5 until you do. Alternatively you could try another method, such as Method 1 or 2.

Method 4: Email Lists

Email lists such as those of ACSU (Association of Computer Science Undergraduates), WICC (Women in Computing at Cornell), ISSA (Information Science Students’ Association), and URMC (Underrepresented Minorities in Computing) occasionally include requests from professors or grad students for undergraduates, or luncheons where you can talk to them about their research (a streamlined version of method 2). While these are rare and most professors do not reach out like this, it can’t hurt. The relevant subscription links are here: ACSU, ISSA, WICC.

What to do When Meeting with the Professor

Be sure to read up on the professor’s work before meeting with them if invited for a chat!

What it is

So you contacted a professor and they scheduled a time to meet at their office with you. What professors look for varies, but usually it’s just to gauge your interest and nothing like the Big Tech Company® coding interviews. It’ll likely be almost all talking, in particular about your history in academics and computer science in general.

What They Look For

This differs wildly by professor, but commonalities they look for are academics, interest, and/or “experience”.

1. Grades/GPA/Transcript: If you’re panicking because of your subpar GPA, don’t worry: there are professors out there who don’t even look at student’s grades, especially those in more applied areas (as opposed to theoretical).

2. Interest: This can be conveyed through emails and you doing your research on their research, but if you’re BS’ing and not actually interested there’s a fair chance they’ll notice either during the in-person interview or if they give you a small project to start off.

3. Experience: This could be past work with projects similar to what the lab does, or courses either taught by the professor or containing content similar to the lab’s work.

Other important factors to some professors are whether you have enough time (based on transcript), how self-directed you are, “fit” (are you a nice person to work with), and (rarely) references.

What to Bring and Prepare

1. Demonstrated interest. Knowledge showing you have, or at least tried to, follow the lab’s work in some way. This can be reading some of the lab’s publications, their blog posts, or even watching a video of one of the professor’s talks.

2. Weekly schedule. Much less important than the first, but this could be useful to show available blocks of time and prove that you’re not taking a credit overload (can be as simple as your Google Calendar or however you keep track of events). This isn’t used in most cases, but better safe than sorry.

3. Resume & transcript. Have it ready, but don’t expect them to ask for it and don’t thrust it into their hands.

Try to meet with a grad student

You may also meet with a grad student if the initial interview goes well. If you don’t, try to do this since they’ll likely be the person you work under during the semester, so that will give you a much better sense of what you’ll be doing.

Top 3 Reasons People Leave Their Labs & How to Avoid Them

From the students we’ve talked to, the reasons most people quit can typically be avoided before they even get a lab position — once they’re in, it’s usually too late.

1. Mismatched interest

Students thought the work they’d be doing was interesting, but they quickly realize they don’t like it. Here’s how to avoid this:

  • Don’t assume a professor’s course content is just like their lab research. Examine their lab page, papers, and talk to the grad student you’ll be working under.
  • If you have an offer but talk to the grad student and find out you won’t like the work you’ll do, then you can dodge a bullet by continuing looking (as long as you’re getting other responses and not desperate for money or credit)
  • Optionally take courses or do side projects in the professor’s area to make sure you like the work.
  • Remember that you can back out basically any time; if you got the “wrong” project or something isn’t working that you feel might be fixable, then talking with the professor is a good approach

2. No time

Talk with the professor so you can get in sync on how many hours you’ll be working each week, as well as how flexible that is. Some students thought they’d have enough time but mid-semester realize that they can’t handle 3 credits/10 hours of work each week. Some professors may be flexible with how many hours you put in so try to ask them about this when you meet them.

3. Lack of guidance in lab

This is the hardest one to prevent. You join a lab, get overwhelmed by the workload, and your mentor is always too busy (and justifiably so) to offer much help. If there are other undergrads in the lab, you can try talking to them. Otherwise you can talk to the grad student you’ll be working under prior to joining and try to assess how much time they’ll have to help you. Ultimately, this is the single most likely pitfall to affect you during grad research; the best indicator you have as to whether this will be a problem is the experience of past undergraduate researchers. If you join a lab that has often advertised itself to undergrads but does not appear to have any working with them, then be careful! This is likely a lab that doesn’t provide much structure or guidance.

Summer Research FAQ: How Things Change with Summer CS Research

Rishi Bommasani, the ACSU Academic chair, and Anmol Kabra, a member of the ACSU academic team, both had some great insights:

Can I do summer research at Cornell? How? When do I reach out?

Definitely! You can use the methods above, but there are more formalized resources for CS summer research. See here.

The nice part about that program is that it takes care of the funding for you, so you know you’ll get paid over the summer. The deadlines for their funding cycles are at the bottom of the page.

If you choose not to go with a formal grant program, but have researched in the past/closely know a faculty member (especially one working in a subfield related to the subfield you want to research in), you should contact them, as a large majority of the research positions over the summer at the top CS research universities (i.e. Stanford, CMU, MIT, Berkeley, etc) are filled in this manner. If you go this route, you can finalize details for researching at Cornell from around March to April to as late as early May in some cases.

Will I Get Credit or Pay for Summer Research?

You can get funding, credit (although the credit may not be useful for most requirements in the CS major), or neither (not uncommon especially for freshmen). If the research is paid, then there’s a higher chance that you’ll be doing more legitimate work (this is because there can be quite a large number of unpaid researchers whose research often is not very productive as young students because they are not associated tightly with the faculty they work under/the faculty member’s students. Additionally, funding over the summer usually means you are explicitly granted money by some type of grant, which often comes with some minimal expectations).

How Much Will I Get Paid If I Get Funding?

The funding for a semester is quite a bit more substantial than it is during the semester; usually 5–8k for the entire summer.

What’s the Time Commitment Like Summer Research?

Unlike during the academic semesters, you are for the most part a full-time researcher. That is, you will in general be expected to work ~40 hours a week, very much like a full-time industry job.

How Does Working in a Lab During the Summer Differ than During the Year?

Generally, if you are funded, you will almost certainly be paired with some kind of grad student, and this is typically a closer relationship than it is over the academic semester. Additionally, summers are a good opportunity for faculty to begin new projects/to afford you as a researcher more freedom since you have a lot more continuous time to work on problems. As such, you may find the problems you work on as a first time researcher over the summer to be more unstructured and less results-focused than they might be for a first time researcher beginning in the academic semester.

Additionally, if your lab/group has lab space, you will more closely resemble what a PhD might do, in that you will have a desk and will be able to work alongside other researchers directly (whereas most undergrads do research on their own/on their own schedule). Unlike industry, you likely won’t have very strict hours/it may not be entirely necessary to be in Gates if you don’t have any meetings. This kind of responsibility (in terms of hours and the just the general idea of longer periods of focused research) is a very important thing to realize, as for most people, undergrad research is something they do as a second or third priority to their studies/other activities, whereas in the summer it is far less ancillary and is basically your main priority.

Lastly, lots of meetings and other kinds of activities happen during the summer (i.e. faculty have more time to have funding meetings with grant-givers like DARPA/NSF/industry research groups and many conferences are over the summer). It is a good idea to get exposed to some of these things if you are interested in pursuing research strenuously.

Are There Any Costs to Doing Summer Research?

You will need to find housing/food for the summer. There is other information available through Cornell about this, but keep this in mind. Most people who do not have leases/apartments that continue through the summer typically sublet (living in University dorms is fairly unheard of for research) and there are various resources to consider regarding this. (The Cornell Facebook sublets group is a good place to start.)

What should I do to succeed at my summer research position?

It’s important to be prepared with background knowledge coming into the summer, so that the group can complete the project at the end of the summer. Think of the experience as an internship in the industry, which usually only assigns short and crisp projects that aren’t central to the overall product. Likewise, the group should decide on a short project doable in 12 weeks to avoid burnout and delay. Depending on how well the professor knows you, the group will decide on a central research project or one that is inconsequential to a project culminating in a publishing. It’s important that the student if accepting of these aspects.

Can I Do Summer Research at Cornell Tech?

While not common, some students have managed to get paid summer research positions at the Cornell Tech NYC campus and work remotely. You can follow the cold emailing method if you want to reach these NYC professors. You can find a list of the Cornell Tech Computer Science faculty here.

Can I do summer research outside of Cornell? When do I reach out?

Yes! Cornell has a small resource on that here. You can also Google this to find many more non-Cornell resources open to all. You also should seek out REU opportunities here.

If you want to find a role at another institution you should start looking by January of the spring prior (i.e. January for the coming summer).

FAQs About Cornell CS Research in General

Can I do a project team and research?

Some people do both, although it is a lot of work. If you’re an incoming freshman, it may be better to only focus on one. Otherwise, you know your capacity best.

How can I tell which professors are accepting undergrads?

While some professors on their website indicate if they’re taking undergrads or have taken them in the past, most don’t; you just have to reach out to many and hope for the best.

I’m just an incoming or current freshman, can I do research?

If you’re an incoming or first semester freshman, it’s unlikely that you’ll find a place unless you have solid high school research experience. It’s also great to take the first semester to adjust.

Most people start the beginning of their sophomore or junior year, but there are labs that take second semester freshmen, especially since they know freshmen will be around for four years and thus won’t have to retrain someone if you stick around. Many labs are happy to invite freshmen to group meetings and generally have them follow along, even if there isn’t a freshmen-ready project available.

I’m already a senior, can I still do research?

If you’re a first semester or rising senior, there are labs that are looking for people who’ve taken a slew of courses in CS, and seniors are likely to fit that. If you’re a second semester senior, it’s likely too late unless you’re going for your masters at Cornell.

Can I do research as an incoming/current sophomore or junior?

Definitely, your chances for most labs are probably highest in this range.

How competitive is getting research at Cornell? What’s the acceptance rate?

This varies drastically by lab. Some professors weren’t accepting any students a semester, while others accepted everybody who emailed, so your mileage will vary. If we had to guess based on people we’ve talked to, we’d say the median is around 33%, but the standard deviation would likely be very high. The largest determiner is self-motivation and self-sufficiency in finding and completing small tasks; even if you feel like you aren’t in the top 33% of the (for example) OS class, those extra skills might still make you the ideal OS researcher.

I want to do a PhD, how soon should I start research?

Quality over quantity here, so starting early only helps in the sense that you have a greater chance of producing higher quality work. Starting junior year and taking the previous time to take courses and determine your true interests won’t even put you behind. The most important thing is that you have enough time to have made some progress in research by the time grad applications are due; it usually takes roughly 1–6 months to really “Get started” on a project, and another ~1–3 to “hit your stride”.

Are there any classes I have to take before doing CS research?

While the answer is almost always yes, this can vary by lab, so your best shot is to just contact the professor using the methods in the guide and hope for the best.

Can research under IS professors count as CS Research credit?

From Walker White: “It depends on whether the professor has authorization to sponsor a 4999 in CS, which is the equivalent of 4900 in INFO. Several faculty can, but it depends on their area. For example, the reason I can do both CS and INFO is because I work in the technical (CS) and HCI (INFO) areas of games. So I have a listing under both. At the end of the day, the only way to find out is to ask the potential research advisor.” Also, if you look at the full CS faculty page you’ll see a list of all the IS faculty who are CS field members; these can always sponsor CS research.

Will I have a chance if I’m not a CS major or haven’t taken CS courses in?

A qualified “yes”: while a good chunk of professors prefer people who have taken courses in CS and/or have CS experience, others just look to see if you have interest and a strong desire to learn, so try to communicate that in your writing and/or talking. If you don’t have any experience coding though, it’s likely better to start there instead of looking for a CS lab.

Do I need to have prior high school research experience?

Nope, it helps but most don’t.

What if I don’t understand any of the professor’s papers?

You’re not alone! A lot of their first-year PhD students also don’t understand those papers! They have years and years of experience, so they don’t expect you to understand everything about their work. You can probably find a general description of their work if you search them up here. Professors also typically (especially in CS) have a website and include a brief and simpler description of their work there, so try Googling “[their name] Cornell” and see what comes up. If you can at least show that you tried to understand their work, that’s enough.

Can I contact multiple professors at once?

This is recommended, especially if you’re cold emailing.

Still Have Questions?

We’re continually updating this document, so feel free to leave a comment or email us at acb352@[this university].edu!

--

--