Computer Science

Computer Science Degrees: Bachelor’s, Master’s, Doctorates, Oh My! [2021 Expert Guide]

Computer Science Degrees: Bachelor’s, Master’s, Doctorates, Oh My! [2021 Expert Guide]
Pure computer science is the study of algorithmic processes, information processes, computer technology, and computation. Image from Pexels
Christa Terry profile
Christa Terry January 29, 2021

You can launch a career in tech with an associate's degree in computer science, but you're going to need to do more if you want to land one of the best-paying jobs or work in a niche field. This guide will tell you everything you need to know about where different computer science degrees can take you.

Computer Science Programs You Should Consider

Article continues here

This website may earn a commission if you make a purchase after clicking on a product link in this article

People associate computer science with tech disciplines like software development and hardware design, but increasingly, it’s a part of everything. This is not a particularly new insight, by the way. Way back in 1993, Michael R. Fellows and Ian Parberry wrote, “We need to do away with the myth that computer science is about computers. Computer science is no more about computers than astronomy is about telescopes, biology is about microscopes, or chemistry is about beakers and test tubes. Science is not about tools; it is about how we use them and what we find out when we do.”

When Fellows and Parberry penned those lines, the practical applications of computer science were relatively limited. Today, digital technology not only powers almost every industry but also keeps our households and lives running smoothly.

Earning one or more computer science degrees can lead to a career in tech or fields as diverse as healthcare, manufacturing, entertainment, and finance. You might specialize in artificial intelligence and then work for a company producing smart appliances. Study robotics and you can design surgical systems. The only limiting factors will be your drive and your highest level of education. You can become a programmer without a degree, but you’ll need at least one—maybe more than one—to become a computer scientist.

In this guide to computer science degrees, we look where different degrees can take you and cover:

  • What is computer science?
  • Is computer science a science?
  • How hard is computer science?
  • Why computer science is important
  • Associate’s degrees in computer science
  • Bachelor’s degrees in computer science
  • Master’s degrees in computer science
  • Doctoral degrees in computer science
  • What computer science degree is right for me?

What is computer science?

Computer science is a broad discipline that blends scientific inquiry, engineering, and technology, but beyond that, it’s hard to pin down precisely what comp sci is. Some define it as a practical discipline encompassing everything from web design to biocomputing. Others assert it’s a branch of mathematics or the purest expression of computational thinking.

Many authoritative sources define computer science in terms of its utility. According to the University of California – Santa Barbara, computer science is mainly concerned with the creation of technology and systems “used in a wide range of industries, including medicine, communications, entertainment, manufacturing, business, and science.” Computer science professionals, according to the BBC, “design new software, solve computing problems, and develop different ways to use technology.” The University of Alabama at Birmingham‘s Collat School of Business uses a similar definition, explaining in its materials that computer scientists “develop new computing methods to solve problems in countless industries, as well as find innovative new uses for existing technology.”

On one hand, these definitions provide useful guidance for students looking for more information about computer science jobs or computer science salaries. On the other hand, they tell us very little about computer science as a discipline or what the study of computer science entails.


“I'm Interested in Computer Science!”

“Typically the additional income from a master’s degree over a lifetime is worth the sticker price you pay for it.” (source)

A master’s in computer science can open countless doors from coast to coast. It will expand your knowledge and can help you advance your career, opening doors to management and leadership roles and increasing your earning potential. Jobs are plentiful around the country in a wide variety of industries, from healthcare to finance, entertainment to manufacturing.

University and Program Name Learn More

Is computer science a science?

This question is still up for debate because the line defining where the science in computer science begins and ends is fuzzy.

Pure computer science is the study of algorithmic processes, information processes, computer technology, and computation—suggesting computer science is definitively a science. As one Quora commenter put it in a thread about why computer science is a science, computer science explores “the scope of what can possibly be computed, how efficiently, and with what algorithms.”

There are, however, prominent figures in this discipline who assert it isn’t a science. Notable researchers and Massachusetts Institute of Technology professors Hal Abelson and Gerry Sussman wrote, “Computer science is not a science, and its ultimate significance has little to do with computers.” Computer scientist and Y Combinator founder Paul Graham said, “I never liked the term ‘computer science’… Computer science is a grab bag of tenuously related areas thrown together by an accident of history, like Yugoslavia… Perhaps one day computer science will, like Yugoslavia, get broken up into its component parts.”

This role confusion extends into the world of computer science degrees. Many programs differentiate between theoretical computer science (the study of computation) and applied computer science (which includes software engineering and information technology) but include elements of both in their curricula.

Approach matters, too. Some colleges and universities treat comp sci like a science. Others like engineering or even a business discipline.

Is computer science STEM?

Computer science might be the ultimate expression of STEM, which stands for science, technology, engineering, and mathematics, and it’s widely agreed that comp sci is a STEM discipline. That doesn’t mean computer science degree programs officially billed as ‘STEM-designated’ are more advanced. “We don’t have the infrastructure that other STEM disciplines have,” writes Mark Guzdial on the Association for Computing Machinery blog. “We know less about how people learn programming than what we know about how people come to understand algebra, evaporation, bacteria, and Newton’s Laws… The other STEM disciplines have decades more experience in defining learning progressions, establishing programs for preparing teachers, defining frameworks and standards, and creating and testing curriculum.”

A STEM-designated computer science program is simply one that meets specific criteria laid out by the United States Department of Homeland Security as part of the country’s efforts to attract foreign science and tech talent. Foreign students who enroll in these programs are automatically eligible to stay in the US three times longer.

How hard is computer science?

The answer depends on whether you’re talking about the discipline itself, breaking into the field, or computer science degree programs.

Computer science isn’t easy, but it is a discipline open to anyone willing to put in the work. Patience and determination are often more important determinants of success in comp sci than coding chops or an aptitude for math. If you’re willing to put your all into coming up with logical and elegant solutions to computational challenges, you’ll do just fine.

On the other hand, the barriers you’ll encounter in this discipline may not be related to the work itself. Women still face discrimination in computer science, and people of color encounter institutional roadblocks. Organizations and HBCUs with comp sci programs are working to democratize computer science, but progress is slow going.

You should also consider that there’s a difference between how hard computer science is in academia versus in the professional world. “I can’t count how many times I thought about dropping out just from frustration and anger alone,” writes one commenter in a Reddit thread about how hard CS degree programs are. “It’s a very very hard degree. But the [professional] work is super easy and it pays so much, so it was worth it in the end.”

Why computer science is important

The answer is obvious. Even now, computers power our cars, which were built by robots. Houses are getting smarter, thanks to connected appliances and systems. Computers form the foundation of our power grids and telecommunications networks, allowing us to keep in touch with friends and family worldwide in real time.

Computers have the potential to do so much more for us, however. Someday, medicine will use data to diagnose us before we feel sick—and robotic systems will perform the surgeries that cure us. Systems will predict natural disasters and disease outbreaks before they happen. Computational devices may even begin to learn more as people do and to make scientific breakthroughs benefiting humanity.

The bottom line is computer science is the discipline with the most significant impact on our lives. Even relatively small changes to computer technology can have a massive impact on how we work, play, live, and relate to one another. Becoming a computer scientist means becoming a part of those transformational shifts. The first step is getting a degree.

Associate’s degrees in computer science

Think of an associate’s degree in computer science as a useful stepping stone on the way to a bachelor’s degree. In an associate’s degree program, you can knock out core liberal arts classes and take foundational computer science courses for less money than you’d pay in a traditional four-year program. After graduating with an Associate of Science in Computer Science (ASCS), you’ll be qualified to work in many web development, IT, and network administration roles—or to transfer into a Bachelor of Science in Computer Science program.


The ASCS curriculum varies by school. Students typically take undergraduate 100- and 200-level general education courses in the humanities, math, and science along with basic computer science classes that sometimes have frustratingly vague titles like Computer Science I and Computer Science II. Core courses and electives cover topics like:

  • Computer architecture
  • Computer programming fundamentals
  • Cyber security
  • Data structures
  • Digital forensics
  • Graphics
  • Management information systems
  • Mobile app development
  • Networks and networking
  • Operating systems and their design
  • Program logic
  • Programming languages (e.g., Python)
  • Systems management
  • Web authoring

Very few associate’s degree programs in computer science will dive deeper into comp sci than this, making the ASCS a good option for those new to the discipline. If you have real-world professional experience creating software, managing networks, or implementing cyber security, you may not get much out of this degree.

Graduation requirements

Full-time 60-credit associate’s degree programs usually last two years—even if you choose to pursue an online computer science degree—but many associate’s programs are designed for non-traditional students who need flexibility. Students often have the option of enrolling part-time, and may take as long as six years to graduate. Most programs don’t require students to complete a culminating project unless they opt into an independent project-based elective. Internships are seldom a part of the ASCS curriculum.

Jobs you can get with an associate degree in computer science

Associate’s degree holders often work in entry-level computer science jobs. The good news is there are plenty of them, though there is plenty of debate as to whether any of the following jobs for associate’s degree holders fall under the umbrella of computer science:

The average salary associated with an ASCS is about $45,000, though you can increase your chances of earning more by completing an internship on your own. Any experience you can bring to the table will help you compete for job openings against candidates with bachelor’s degrees.

Bachelor’s degrees in computer science

Computer science bachelor’s programs prepare students for all kinds of relatively well-paid tech jobs. The Bachelor of Science in Computer Science (BSCS) or the Bachelor of Arts in Computer Science (BACS) are the most common, but schools offer a variety of related diplomas, including the:

  • Bachelor of Applied Science in Computer Science
  • Bachelor of Computing in Computer Science
  • Bachelor of Engineering in Computer Science
  • Bachelor of Mathematics in Computer Science
  • Bachelor of Technology in Computer Science and Engineering

As recently as 2017, headlines proclaimed that undergraduate computer science degree programs were shrinking, but statistics tracking the number of undergrads by discipline told a different story. Computer science programs weren’t shrinking—they were expanding to include related degrees in computer engineering, software engineering, and data science (all of which might have once been a part of the CS department).

Computer science is alive and well in 2021. When these programs are small, it’s because they’re selective, designed to weed out students who aren’t cut out for careers in tech.

Is computer science a good major?

Only you can answer this question. Jobs in the computer science field tend to pay well, and there are lots of them, but too many comp sci undergrads flunk out because they don’t understand what they’re getting into. The top computer science programs are extremely math- and logic-focused. Choose this major because you love video games or you loved building a PC, and you’re going to be disappointed. BSCS courses cover some potentially frustrating material.

“It doesn’t necessarily take a genius to get a CS degree, but… not everyone has the patience for it,” writes one commenter in a Reddit thread about whether comp sci is hard. “It really requires that you develop an entirely different way of thinking, which in the early stages is very frustrating and sometimes feels completely hopeless.”


Coursework in undergraduate computer science degree programs varies from school to school, but core courses in most programs cover topics like:

  • Abstraction
  • Algorithms
  • Calculus
  • Computer architecture
  • Computer engineering
  • Data structures
  • Linear algebra
  • Logic
  • Programming
  • Software development
  • Statistics and probability

In addition to taking the required foundational classes, computer science students can usually choose from among elective courses focused on topics like:

  • AI and machine learning
  • Algorithmic functions
  • Compilers and compiler design
  • Computational theory
  • Cyber security
  • Data science
  • Distributed systems
  • Game design
  • Graphics
  • Human-computer interaction
  • Information theory
  • Operating systems
  • Real-time computing
  • Software engineering

Some BSCS programs let students choose a specialization track, but most focus on comp sci fundamentals.

Graduation requirements

The typical 120-credit BSCS program takes four years of full-time study to complete. Students take a variety of general education classes in the humanities, science, and mathematics in addition to computer science courses. Some comp sci bachelor’s programs culminate in an internship, which can be a hugely valuable experience—and not just because it helps students grow their networks.

“I went to Drexel University and majored in computer science,” explains Daring Fireball founder John Gruber in an episode of Recode Media with Peter Kafka. “Drexel has a great program, they call it co-op, but it’s mandatory to graduate to do internships. I loved it because it helped me figure out very quickly that I didn’t really want to be a programmer.”

Jobs you can get with a bachelor’s degree in computer science (salary)

There are many well-paying positions for BSCS grads, including:

The median salary for bachelor’s degree holders is a respectable $85,000. Earn a master’s degree in computer science and your earning potential could easily hit six figures.

Master’s degrees in computer science

If you want to work in competitive fields like robotics or step into managerial or executive roles, you’ll need a Master of Science in Computer Science (MSCS).


Many of the best MSCS programs build curricula around hyper-focused concentrations like human-computer interaction, machine learning, or computer vision. Your specializations will determine what classes you take beyond a handful of core courses. Concentration-based programs are more likely to require incoming students to already possess foundational knowledge and programming skills.

At schools with on-campus and online CS programs for non-CS majors, however, programs usually have a set curriculum rooted in applied computer science. Students take courses in software engineering, database management, and web development. Some MSCS programs for non-CS majors include theoretical computer science topics in the curriculum, but many don’t.

Some programs, like the online MSCS program at Stevens Institute of Technology, include foundational and higher-level topics in the standard curriculum. Core courses in this program include:

  • Advanced Programming in the Unix Environment
  • Agile Methods for Software Development
  • Algorithms
  • Computer Organization & Programming
  • Data Structures
  • Database Management Systems
  • Distributed Systems & Cloud Computing
  • Human-Computer Interaction
  • Introduction to Java Programming
  • Introduction to Operating Systems
  • Mobile Systems & Applications
  • Web Programming

Graduation requirements

How long it takes to earn an MSCS varies by institution. Two-year, full-time programs are the most common because comp sci master’s programs tend to cover a lot of ground. Most MSCS programs require that students complete 30 to 60 credit hours of work made up of classwork plus a practicum, internship, or culminating project. The 33-credit online MS in Computer Science curriculum at Tufts University, for example, includes a two-semester capstone course.

Jobs you can get with a master’s degree in computer science

The answer to the question ‘What can I do with a computer science masters?‘ is complex. Your specialization area will probably determine what you’re qualified to do. Common job titles for MSCS grads include:

The highest-paying master’s in computer science jobs include:

So, is a master’s in computer science worth it? The answer is an almost unequivocal yes. An MSCS from one of the top on-campus or online computer science programs might be overkill if you want to spend your life coding. If you want to advance into the highest-paid positions in the computer science world, however, you’ll almost certainly need a graduate-level computer science degree. An MSCS can have a profound impact on your earning potential. In Forbes’ rankings of graduate degrees by salary increase, the Master of Science in Computer Science offered the second-biggest boost.

Doctoral degrees in computer science

The biggest perks of having a PhD in Computer Science include being able to use the honorific ‘Dr.’ and being qualified to step into roles in the R&D labs where innovations in technology happen. The biggest downside is the value of your degree will be setting-specific. “If you want to go into research… then it’s difficult to do so without a PhD,” Greg Law, co-founder and CTO at the Undo software company, told U.S. News & World Report. “But beyond a research role… I don’t feel a PhD opens up any opportunities that would otherwise be precluded.”

You’ll be happiest in a computer science doctorate program if you accept that a PhD probably won’t be a financial investment. Computer science PhD salaries are comparable to those of master’s degree holders—the average PhD in CS salary is about $125,000—and you may actually earn less in the high-profile specialized research roles typically coveted by PhDs than you would working as a humble software developer at a big Silicon Valley tech firm.


Most doctoral-level computer science degree programs don’t have a fixed comp sci curriculum. Instead, students either take courses specific to set specialty areas or create unique interdisciplinary curricula (which many schools call a program of study) in support of their research. Examples of specialty areas offered by colleges and universities with computer science PhD programs include:

  • Artificial intelligence
  • Computational theory
  • Graphics and visualization
  • Human-computer interaction
  • Robotics
  • Systems and Networking

Graduation requirements

Every PhD program has different graduation requirements, and these can change based on the degrees you’ve earned previously and your professional experience. In general, however, enrolling in a computer science doctorate program means committing to four to seven years of work. During that time, you’ll not only study and do research but also teach.

Jobs you can get with a doctoral degree in computer science

Most jobs for computer science PhDs are in research and academia. However, what makes computer science unique among fields is that high-profile tech companies are known for hiring doctorate holders. While many computer science graduates do go on to become professors and researchers, more end up in positions at companies like:

  • Amazon
  • Apple
  • Facebook
  • Google
  • LinkedIn
  • Microsoft
  • Oracle

Google, in particular, is known for hiring PhDs. One out of every three hires in the company’s San Francisco branch has a doctorate.


What computer science degree is right for me?

The answer depends on where you are in your professional life. Any of the above computer science degrees can lead to an engaging and stable career that lets you bank a few bucks. An associate’s-level computer science degree won’t qualify you to step into senior-level positions in this thriving field. Still, it may be the best choice if you want to kick off a career in tech with no prior experience. A bachelor’s program might be the better choice if you know a little programming and have some experience in IT. Master’s degree programs admit both CS majors and non-CS majors, so don’t assume you can’t earn an MSCS just because you don’t have a BSCS. You might just have to work a little harder for it. And chances are you already know whether your destiny lies in a PhD program.

According to the US Bureau of Labor Statistics, the demand for comp sci professionals will grow at a rate of about 15 percent through 2029 as more than 500,000 new tech jobs are created across industries. That suggests whichever degree pathway and career path you choose will lead to good things because computer science professionals will continue to be a hot commodity and computer science salaries will stay high.

(Last Updated on February 26, 2024)

Questions or feedback? Email

About the Editor

Tom Meltzer spent over 20 years writing and teaching for The Princeton Review, where he was lead author of the company's popular guide to colleges, before joining Noodle.

To learn more about our editorial standards, you can click here.


Computer Science Programs You Should Consider