Thinking about getting a computer science degree? You've probably heard that there's huge demand for computer science graduates, and students who major in computer science can expect high-paying jobs right out of college. But computer science programs have very high dropout rates, often because students choose this major without really understanding what it'll be like.
The best way to avoid this is to know what to expect going into a computer science program, and we're here to help! By reading this guide you'll learn:
- What is a computer science degree?
- What do computer science majors learn?
- Is computer science the right major for you?
- What are the best schools for computer science?
- What can you do with a computer science degree?
What Is Computer Science, and What Is a Computer Science Degree?
Computer science majors study computers and different programming languages to learn how to design, develop, and test software programs and applications. Students in this major take classes in calculus, electronics, computer systems, probability, programming, and algorithms.
Computer science focuses primarily on software, and computer science coursework might focus on analyzing large datasets, understanding different programming languages, cybersecurity, and coding. If you get a computer science degree, you are expected to be well-versed in each of these areas.
Computer engineering is similar but includes more coursework in electrical engineering as students are learning more about the computer hardware compared to computer software.
Majoring in Computer Science
As with other bachelor's degrees, it generally takes four years of full-time study to earn a bachelor's degree in computer science (sometimes called a "CS degree"). Some people can complete it in 3 or 3.5 years, especially if they have credits already earned from AP or IB scores, and some people take closer to 5 years, especially if they get a double major or take more classes beyond their computer science requirements. It's also possible to get an online computer science degree from many schools as online college classes become more popular.
As a computer science major, you'll have to complete university graduation requirements like all other students. These often include one or two writing classes, a math component, a humanities requirement, and a social science requirement. Additionally, you'll also often have to take a few science-related classes in biology, chemistry, and/or physics. This is because most computer science majors earn Bachelor of Science degrees, and those often have both math and science requirements students must meet. The math requirements can be extensive, with required classes in calculus, statistics, and linear algebra, among other subjects. Most of your classes, however, will be directly related to computer science.
Common classes computer science majors take include:
- Introduction to Programming
- Computer Systems
- Software Design
- Software Engineering
- Computer Organization
- Algorithms and Data Structures
- Ethics in Computer Science
- Operating Systems
- Computer Graphics
- Artificial Intelligence
- Computer Security
- Programming Languages
- Data Analysis
- Mobile Application Development
Of course the exact classes you take will vary based on the school you attend and your own interests, but expect to have a solid grounding in math and science as well as in-depth knowledge of computer programming, software design, website creation, and more.
Is Computer Science a Good Major for You?
A computer science degree can lead to many high-paying job opportunities, so it's a popular major for college students to consider. Computer science is often ranked one of the best majors for college students because demand is steadily growing for their skills, and they can often land high-paying jobs right out of college. According to the US Bureau of Labor Statistics, software developers (one of the most popular careers for computer science majors) have a median salary of $107,510 a year, and demand for the career is expected to increase 22% over the next decade, which is much faster than the average job growth of 4%.
So a computer science degree could be the path to wealth and a stable career, but does that mean it's what you should major in? There are important considerations to take into account. Many students, lured by the benefits of a computer science degree, choose it as their major only to later switch to a different program. In fact, a UK study found that computer science majors are more likely than any other major to drop out of their program.
Why is this? There appear to be two main reasons. First, to be blunt, computer science is a tough major. You need strong skills in tough subjects and a lot of technical know-how. Early classes are often designed to be "weeder" classes that are deliberately tough to get students who aren't ready for the rigor of the major to drop out early. Computer science classes also build on each other, so if you scrape by in a beginner class, your lack of knowledge will come back to haunt you again and again in future classes. It's not a major where you can cram at the last minute, forget what you studied hours after the exam, and come out OK. Final exams can often be 50% or more of your grade in a class, meaning you can't mess them up and still get a good grade. All of this combines to create a major that requires consistent hard work to do well in.
The second reason computer science is commonly dropped is that many people find that the classes you take and the skills you learn for a computer science degree simply aren't interesting to them. It's common for students who enjoy video games, phone apps, etc. to think that they'll enjoy learning the process behind creating one of their favorite hobbies. However, learning how to code, studying statistics, deciphering algorithms, etc. is very different than actually enjoying the finished product of many of these skills. This lack of interest, combined with the challenging workload of the computer science major, causes many students to leave the program.
Many students change their major in college, and sometimes it's unavoidable because the best way to learn whether you like a subject or not is to actually take classes in it. It's often quite easy to change your major, and it may not even delay your graduation, but having at least some idea of what to expect from majoring in computer science can make it more likely that you choose the best major for you from the start.
There are many ways to get a taste of what computer science classes will be like before enrolling in college courses. Codeacademy offers free coding classes, and Harvard's online learning site, Coursera, and edX all offer computer science classes, many of them free. Give a few of them to try, and see if the information you're learning is something you think you'd like to continue studying throughout college as well as throughout your career.
The 8 Top Computer Science Programs in the US
If you decide you want to get a computer science degree, you'll want to make sure you're going to one of the top schools for it. Below are eight of the best undergraduate computer science programs in the country. They're organized alphabetically, rather than by rank, as all are top choices and deciding which program is best for you will likely come down to individual preferences.
- Pittsburgh, PA
Carnegie Mellon has a long-standing and well-regarded computer science program. They're particularly strong in the area of artificial intelligence and, in 2018, launched the first undergraduate major in artificial intelligence. In 2020, they also launched a major in human-computer interaction. Their program emphasizes undergrad research, and most students who complete the computer science major either completed research with the school or through a job/internship. Additionally, if you want to major in computer science but also study other subjects, Carnegie Mellon offers interdisciplinary majors that combine computer science with the arts, which can be particularly valuable for students who want to pursue careers in robotic arts, high-quality game design, and interactive stagecraft.
- Ithaca, NY
At Cornell's computer science program, students gain a solid understanding of algorithms, data structures, logic, programming languages, and theory. Once core courses are complete, there are numerous computer science electives students can take. Students at Cornell also benefit from small class sizes, the opportunity to conduct independent research under the supervision of renowned faculty, and an array of computer science-focused student organizations, including the Information Science Student Association and Women in Computing at Cornell.
- Cambridge, MA
Known worldwide as a STEM powerhouse, it's no surprise MIT has one of the country's top computer science programs. The school's electrical engineering and computer science program is the most common program for undergraduate students to be in, so expect a wide range of classes and lots of potential study buddies. Courses have a heavy emphasis on problem-solving, modeling, and abstraction. There is a straight computer science major, as well as a computer science and molecular biology major and a computer science and electrical engineering major. MIT highly emphasizes research, so expect to learn cutting edge advances in computer science and possibly take part in researching some of them yourself.
- Troy, NY
Computer science is currently the most popular major at Rensselaer, with several hundred students enrolled in it. The major emphasizes flexibility, with students able to choose from numerous electives, as well as the option of getting a minor or double major. Students can conduct research as part of the Rensselaer Center for Open Source, and there's also an option to earn a bachelor's and master's in computer science in five years at the school.
- Stanford, CA
Stanford's computer science department was founded in 1965 and is consistently ranked as one of the top in the world. In addition to coursework, students can participate in CURIS, Stanford's program for undergraduate computer science research. Undergraduate research is heavily emphasized, so computer science students will have numerous opportunities to get hands-on research experience before they graduate, through internships, classes, independent research, or a combination. Additionally, Stanford's location in the heart of Silicon Valley makes it easy for students to make connections with the many companies and start-ups looking for people with computer science skills.
- Berkeley, CA
UC Berkeley is located close to Silicon Valley and also has a long-standing reputation for exceptional STEM programs. Students who major in computer science can choose from among multiple tracks, depending on whether they want to pursue a PhD or go straight to the workforce. Because it's a large school, expect numerous class options that allow you to develop a curriculum that meets your specific interests.
- Urbana Champaign, IL
The University of Illinois is known for having top engineering programs across the board, including computer science. Nearly 2,000 undergrad students are enrolled in its computer science programs, and the school offers 14 undergraduate programs in computer science. Depending on your interests, you can choose an interdisciplinary major that combines computer science with advertising, chemistry, music, philosophy, or one of the other options offered. This can be a great way to create a specialization to better prepare you for a computer science career in a specific industry.
- Seattle, WA
The University of Washington's Paul G. Allen School of Computer Science & Engineering has over 1,500 undergraduates majoring either in computer science or computer engineering. Because the computer science program is so large, students have lots of options for classes, as well as opportunities for student research, teaching assistant positions, study abroad, and internships.
7 Computer Science Degree Jobs
What can you do with a computer science degree? Below are seven common and not-so-common computer science degree jobs. They span a variety of skill types and job duties to cover a broad range of interests. For each of the computer science degree jobs (when available), we give a short description as well as the median salary, based on data from the US Bureau of Labor Statistics.
- Median salary (2019): $107,510
Software developer is one of the most common career options for computer science graduates. It has a high medium salary, and job growth is explosive. People with this job create the applications or systems that run computers or other electronic devices. Any time you're using Microsoft Windows, Adobe, Google Chrome, etc. you're using a program software developers created.. They might design completely new software or work to make improvements to existing software.
- Median salary (2019): $86,550
Computer programmers are all about code. They write and update code for computer programs and apps. They need to know a variety of programming languages and have expert knowledge of coding. While software developers often have to do big-picture thinking of how a consumer will interact with the computer programs, computer programmers lay the groundwork in the code to make sure software developers' visions come to life.
Mobile Application Designer
- Median salary: Data not available
Want to design the next Pokémon Go or Candy Crush? Mobile apps continue to grow in popularity, and there's a lot of demand for high-quality, new apps. Mobile app designers work alone or as part of a team to design apps from start to finish. Job duties include researching potential app ideas, using coding and graphics to develop the app, and rolling it out. This is a great career option for people who want to use a lot of different skills as well as people who want to work for themselves, as anyone can create an app without being part of a company.
- Median salary (2019): $99,730
Cybersecurity experts work to keep hackers and other nefarious types from compromising information systems. They must be well-versed in detecting, preventing, and stopping security breaches as well as making sure computer systems are as protected as possible against potential security breaches. As more and more companies realize the importance of being protected against security breaches, demand for cybersecurity experts has grown rapidly.
- Median salary (2019): $73,760
Web developers are the people who design and maintain websites. They can create websites from scratch, improve existing websites, and make regular updates to ensure that a website is both attractive and functional. There's a lot of demand here, especially as the concept of side hustles has grown, and individuals want professional-looking websites to advertise their service or products. It's also fairly easy to become a freelance web developer and grow your business independently.
Robotics/Artificial Intelligence Expert
- Median salary (2019): $122,840 (for Computer and Information Research Scientists)
Robotics and AI experts program computers to "think." They might design robots to complete certain tasks in manufacturing, the medical field, etc. or they might design computer programs that test hypotheses, rank different ideas, even recognize faces. AI and robotics are on the cutting edge of technology, so there are a lot of cool directions you can go with this career.
Digital Currency Advisor
- Median salary: Data not available
All about Bitcoin? Because cryptocurrency is so new and still so poorly understood, experts in the field are in high demand. As a digital currency advisor, you'll understand the ins-and-outs of cryptocurrency and blockchain, and you'll advise companies on the moves they should make to legally profit off them.
Want to learn more about schools with great computer-related programs? Check out our guide on the 14 best IT schools in the US!
Want to show off your computer science skills? Read our article on the 11 best computer science competitions for teens and get practicing!
Want to build the best possible college application?
We can help. PrepScholar Admissions is the world's best admissions consulting service. We combine world-class admissions counselors with our data-driven, proprietary admissions strategies. We've overseen thousands of students get into their top choice schools, from state colleges to the Ivy League.
We know what kinds of students colleges want to admit. We want to get you admitted to your dream schools.
Learn more about PrepScholar Admissions to maximize your chance of getting in.
Have friends who also need help with test prep? Share this article!
Christine graduated from Michigan State University with degrees in Environmental Biology and Geography and received her Master's from Duke University. In high school she scored in the 99th percentile on the SAT and was named a National Merit Finalist. She has taught English and biology in several countries.