Graduate School?

The following is an approximate timeline of things for you to consider if you are interested in attending graduate school. They were largely composed by Dr. Mark Ardis, and edited by Jerod Weinman.

Background

There are many good reasons for going to graduate school in computer science: Many others have written quite extensively on this topic; many are referenced below. The Computing Research Assocation has created a series of videos you may find interesting: https://www.youtube.com/playlist?list=PL6AeXx75lHyxmrPOliOz9wmfA4KrL3cLA.

Junior Year

Fall Semester

Talk to some of your teachers about subjects that interest you in order to figure out what you might study in grad school. Often these discussions lead to suggestions of schools where good work is being done in those areas. Visit the web sites of people at those schools to see what kinds of projects they are doing.
Apply for an undergraduate research experience over the summer. (See http://www.nsf.gov/crssprgm/reu and http://conquer.cra.org/research-opportunities). This is a great way to find out if you like research, and you will learn more about the grad student lifestyle. There are also several government labs that sponsor research internships. For example:

Spring, Summer

Do some research to find out where you want to apply. There are a variety of resources. For example All rankings are controversial and should be taken with a grain of salt. The NRC's has been particularly criticised by the Computing Research Association.1 Peterson's Guide provides good links to schools and their programs.
There are many other schools worth considering. Most departments are stronger in some areas than others, so look for a department that is strong in your area of interest. The Center for Careers, Life, and Service (http://www.grinnell.edu/about/offices-services/cls) regularly holds a Graduate School Fair in the fall each year, and offers other assistance with the admissions process (http://www.grinnell.edu/about/offices-services/cls/resources).
If you are worried about your chances of getting into schools, consider UTEP's CS Acceptance Estimator (http://www.cs.utep.edu/admissions). It uses publically-available statistics to determine whether your GRE scores and GPA are typically accepted by individual schools. It also gives somes hints on criteria used by many schools.

Senior Year

Fall

Download application forms or apply online. Take the Graduate Record Exams (GRE). This is a multi-step process: Ask for recommendation letters from faculty. Keep in mind that faculty are extremely busy, too, so ask early. As soon as you know you are interested in applying, in fact. Be sure to give them a copy of your résumé, a description of your interests, and some information about why you are different from all the other students that are applying. Collect all of the recommendation forms or instructions and give the whole packet to the faculty member well in advance of the deadlines.
Start writing your personal statement. The earlier you start, the more time you'll have for revisions. If you don't know what to write (or even if you think you do), you may consider reading Donald Asher's book Graduate Admissions Essays: Write Your Way into the Graduate School of Your Choice.
Request copies of your college transcripts to send them with your applications as needed.
Apply for financial aid. Some schools have a separate process for applying for financial aid, or they require that applications be completed earlier. Be sure to check these details.

Winter

Visit some of the places where you have applied, especially any that may be nearby. Departments will sometimes pay for some or all of your travel expenses, so ask before making plans. Many departments have special visit days or weekends.

Spring

When the acceptance letters start arriving, consider visiting (perhaps again). Departments are delighted to sponsor trips by accepted students. You can use this trip to investigate housing options.
After you decide on a school thank the faculty who wrote you letters of recommendation and tell them where you are going. You never know when you may need another letter of recommendation from them.

Other Reading


Footnotes:

1See http://cra.org/govaffairs/blog/2010/09/nrc-doctoral-rankings-and-computer-science