Skip to main content Skip to secondary navigation

Email forwarding for is changing. Updates and details here.


BS | Research Opportunities

Main content start


The Computer Science Department at Stanford have faculty and students that are globally recognized for their innovative and cutting-edge research. We offer scholars various opportunities at their disposal to participate in undergraduate research. If you are interested in research, we welcome you to explore the opportunities at your disposal.

Department of Computer Science

CURIS Research

The program for CS undergrad Summer research. Participating students will work on their projects full-time and are paid a stipend for living expenses. 

Learn More
Department of Computer Science

Independent Study

Undergraduate research is often done through CURIS, for academic credit, or through an informal arrangement with a professor.

Learn More

Getting Started

  • Undergraduate CS research website. The most reliable way to learn about projects you can get involved in is through the undergraduate CS research website. Throughout the year, professors have openings for undergrads to do work in their labs. They post descriptions of these projects on the site for your perusal. This site lists CS research projects during the academic year for course credit, CS research projects for the Summer quarter under CURIS (paid internship), and research projects in other departments that include CS applications.
  • Go to office hours. Find a professor whose research interests you want to learn more about. Discuss what possibilities are available or find out more about a particular group. Often the professor will be able to direct you to some research papers that might be valuable to read or other groups that you might find interesting. It's always a good idea to email a professor and let them know that you will be coming in. That way if their office hours are particularly busy, they can suggest another time.
  • Connect with a graduate student. Graduate students work on projects every day and deal with most of the details, they are probably one of the best sources of information. They will have a good idea of what role you could initially play in the project and will also be able to give an honest assessment of what it is like to work with the professor and what are the expectations of the group. Finally, if you decide to work with the group, the graduate students will probably be the ones who will be mentoring you in the day-to-day aspects of your work. Before you choose a project, try to meet with at least one graduate student in the group, preferably one that would be mentoring you. If you are still deciding between projects, ask the graduate students for their opinion.
  • Read your email. The bscs list is constantly getting announcements about presentations that are being given by faculty, advanced graduate students, and visiting faculty. Take the time to read through some of the abstracts and pick a few that interest you. These announcements are not usually forwarded to the considering_cs list. If you are interested in getting these announcements, visit the course advisor and declare CS!
  • Attend seminars & presentations. In addition to the talks and presentations that are announced by email, there are some CS seminar series that are especially appropriate for learning about research. Some of these are available as a one-unit class or to simply hear the speakers that interest you:
    • CURIS poster sessions. At the end of the Summer quarter and the beginning of the Fall quarter, the CURIS program organizes poster sessions for undergraduates to present their Summer research projects. This is a great opportunity for you to get first-hand information about your peers' research experience as well as potential project ideas and research groups of interest. In addition, the display in the Gates lobby shows a collection of both undergraduate and graduate research projects year-round.
    • 500 level seminars. All of the CS 500 level courses are topic seminars. For instance, CS 547 Seminar focuses on Human-Computer Interaction topics. Each week, a different speaker comes in and presents their research. Sometimes the speakers are Stanford professors, graduate students, or they're outside visitors. The presentations are technical, check the schedules on the class web pages to find talks that may be interesting.
    • CS300 (speaker schedule). At the beginning of each academic year, all new PhD students are required to take CS 300. In each seminar, two professors come in and describe their research work. The idea is to give PhD students an overview of the ongoing research so they can decide which groups they would like to join. Although the class is technically for PhD students, undergraduate and Master's students can enroll. The presentations are likely to be somewhat technical, but since they are geared toward PhD students with a broad variety of interests, they should be fairly accessible.