High school seniors are facing stiffer-than-ever competition when applying to the nation's top computer science programs this fall. But admissions officers and professors at elite tech schools can offer tips aimed at helping your child get accepted come spring.
The numbers are daunting. Carnegie Mellon University's School of Computer Science in Pittsburgh expects to receive 4,000 applications this year and will accept only 400 of them. Similarly, Harvey Mudd College in Claremont, Calif., expects its applications to increase again this year, after rising 15% in each of the last two years. Last year, Harvey Mudd accepted 21% of its 3,144 applicants.
To get accepted to an elite computer science program, high schoolers need a combination of good grades in challenging math and sciences courses as well as extracurricular activities that show passion for the field.
Selective computer science programs look at the math and laboratory science courses taken by students during high school. Harvey Mudd, for example, only accepts students who have taken a year each of calculus, chemistry and physics. These classes don't have to be honors or AP level - although that helps - as does receiving A's or B's in these classes.
"We're looking for evidence of intellectual achievement," says Mark Stehlik, assistant dean for undergraduate education at Carnegie Mellon's School of Computer Science. "We look at your high school GPA, and if you have really good SAT scores. We look at what kinds of classes you've taken, if some were AP classes or classes at a local college or summer programs. You have to have the baseline intellectual ability to get in the door."
It also helps to be a girl. At Rose-Hulman Institute of Technology, for example, only 14% of the computer science majors are women, so it's easier for female applicants to stand out from the pack. At Carnegie Mellon's School of Computer Science, 30% of the students are female.
"If you are a woman applicant and all things are equal - if you have exactly the same numerical scores as a man - then it's likely we will vote in your favor because we are committed to diversity," Stehlik admits. "The criteria is the same for women and under-represented minorities. But we will tip our hat to these populations because they are harder to find."
Many high schools don't offer computer science courses, so these courses aren't a pre-requisite at even the highest-rated undergraduate programs.
"We are painfully aware that at many high schools, computer science is not seen as a core course, is not seen as something that's integral to the curriculum," says Rob Springall, dean of admissions at Bucknell University, a Lewisburg, Pa., school whose undergraduate computer engineering and computer science programs are ranked third by U.S. News & World Report. "Like other elective courses, computer science is one that is most at risk of getting left out when there are budget cuts."
If your high school doesn't offer computer science classes, admissions experts recommend finding other ways to learn the topic, such as taking online programming courses or working part-time for the school's IT department.
"The best advice to give high school seniors is to take advantage of the resources that are available," says Thyra Briggs, vice president for admission and financial aid at Harvey Mudd, which graduates 25 computer science majors each year. "If your high school only offers one computer science class, arrange an independent study for yourself. Get involved in internships. A lot of students are taking advantage of courses online. So many of the students we interview are self-taught on all sorts of different computer languages."
Popular extracurriculars for would-be computer science majors include math contests, programming contests, FIRST Robotics competitions, and science fair projects. (See 11 cool robots you may not have heard of.)
The FIRST Robotics competitions can prove particularly valuable to high schoolers because 125 colleges - including Rose-Hulman and Bucknell - offer scholarships for students who have participated in the program, which was founded in 1989 by Segway inventor Dean Kamen.
"We like to emphasize collaboration over competition," Briggs says. "We ask about your FIRST Robotics team, what role did you take and how did you handle disagreements on your team? We have a collaborative atmosphere; our kids are not the ones who disappear into a lab and never talk to anyone."
Carnegie Mellon appreciates students who have juggled demanding classes and varsity sports because that demonstrates time management skills.
"We're looking for some testament to your work ethic," Stehlik says. "What gets you in Carnegie Mellon is intellectual horsepower, but what gets you out is horsepower and a work ethic. If you've been captain of a team or played a varsity sport for four years and been able to hold down good grades, that shows you've been able to manage your time."
RELATED: Why computer science students cheat
Harvey Mudd prefers students who have engaged in community service projects or tutoring efforts aimed at helping children learn math or science.
"We love students who have done something to get younger kids involved in math and science," Briggs says. "Kids can lose interest in these areas very early. We like to see [applicants] share their love of math and computers with others... We're really taken by students who bring others along into their passion for computers."
Along with their college applications, many would-be computer scientists show they are hobbyists by submitting extras with their applications. These extras include links to open source code, computer programs or video games they've written, Web sites they've built, or iPhone apps they've created.
Bucknell prefers students who can demonstrate experience in coding and systems development for its computer science and computer engineering programs. Last year, Bucknell received 265 applications for these majors and accepted 86 -- or 32% -- of them.
"Take some online programming course. Sign up for a developer's kit. Don't think that you have to choose the hardest or most difficult language to learn. Write in Python. Write in Logo or Pascal. Write and code in Ruby on Rails," Springall recommends. "Show us that you don't just like to use computers as a tool but that you're interested in developing the next generation of the tool."
We're looking for students that "have a true interest and curiosity about science and engineering," says Professor Shawn Bohner, director of software engineering programs at Rose-Hulman, a Terre Haute, Ind., college that is rated first in the U.S. News & World Report ranking of undergraduate computer engineering programs at colleges that offer bachelor's and master's degrees only. "Can they learn the language of mathematics? If these things don't come into play, it's harder for them to succeed here... Show us interest. Show us initiative."
Georgia Institute of Technology's College of Computing prefers students who are "creative and expressive with computing," says Cedric Stallworth, assistant dean for outreach, enrollment and community. "You shouldn't be learning Java just to learn Java. You should be learning Java because you want to create a game, and Java is a tool that helps you do that. That puts computing in the right context."
Last year, Georgia Tech received 876 applications for computer science majors and accepted 370 -- or 42% -- of them.
"We've had applicants who have worked on pieces of software that have gotten widely distributed, students who have worked on standards, and students who prior to coming to Stanford have written technical books," says Professor Mehran Sahami, associate chair for education at Stanford University's Computer Science Department. "These are extreme cases, but it helps when you have something that's different and actually shows real passion for the subject."
Stanford also has successful computer science students who have never studied the field prior to entering college. Sahami himself hadn't taken a computer science course in high school prior to becoming an undergraduate at Stanford.
"The real message to high school students is that it doesn't matter if you've had formal training in computer science previously. When you get to college, you can give it a chance and explore it," Sahami says. "We think computer science courses should be a funnel - not a filter. We're trying to make the field accessible."
Techie parents aren't usually successful at forcing their kids to study computer science in college if the aptitude and interest aren't there. That's because computer science and computer engineering courses require more time and effort than other college majors.
The National Survey of Student Engagement released this week found that engineering students spend significantly more hours per week studying than college students in any other major. The survey included 400,000 undergraduates at 700 colleges and universities.
"The rigors of an engineering or science school will out somebody if they truly don't have the interest," Bohner says.