Computer Science or Engineering — Which Is Right for You?

Lots of students today think they’ll major in some field related to computers. But how do you decide between computer science and engineering? Learn from a Noodle Expert about the similarities and differences so you can choose the best path for your interests and career aspirations.

If you graduate from college in a computer-related discipline, you have lucrative career prospects in front of you, with a median starting salary around $60,000 per year. According to a 2014 report by Payscale, both computer science and computer engineering fields rank in the top ten majors with the highest salary potential.

The Popularity of Computer Majors

According to the Computer Research Association, there has been a continued uptick in recent years in computing degrees generally, with comparable increases in both computer science and computer engineering. Majors in these areas are currently in a "surge" period among students looking to contribute something "cool" to the ever-changing technology sector — especially related to smartphones, software applications, and digital platforms. In fact, computer science is first on The Princeton Review's Top Ten college majors.

The Gender Gap in Computer Majors

Most students who pursue computer-related majors are male, and although there have been slight fluctuations in the percentage of women entering the fields of computer science or computer engineering, only 18 percent of graduates in both degree programs are women. Incidentally, across these degrees, about 65 percent of graduates are white.

Industry analysts are trying to account for the gender gap in computer degree programs and, later, in the workplaces in which these graduates are employed. Techcrunch reports that only 17 percent of Google's tech employees are women, a figure that is even lower at Facebook, where only 15 percent are female.

We may find one possible explanation in the treatment that women face when they pursue educational and professional paths in computer-related fields. Lea Coligado, a computer science major at Stanford, recently published an account of the sexism she experienced from other students, co-workers, and superiors during her internships. In an effort to change this type of treatment and draw more women into computer-related disciplines, colleges such as Carnegie Mellon, the University of California-Berkeley, and Harvey Mudd College have begun pointed attempts to recruit more female students, and are apparently making significant strides.

Comparisons Between Computer Science and Computer Engineering

Computer-related majors include a wide range of courses covering topics relevant to both hardware and software design and development. These areas of study may also include offerings in robotics, cybersecurity, artificial intelligence, circuitry, and web design. Before students specialize in one track (either science or engineering) most undergraduates learn to program using various coding languages and study advanced math to understand how to create complex algorithms.

The first two years for both majors typically include core classes in calculus, algorithms, programming and languages, and various introductory classes in computer systems and theory. Third- and fourth-year students will continue to find overlap in some topics, particularly in programming, although many schools provide the opportunity for computer engineering majors to specialize in either hardware or software, or in advanced technologies related to either. Due to the many common areas of study, some students opt to pursue a dual major in both programs.

If you choose to pursue only computer science, your discipline will center on the theories and complexities of computer software design and programming, as well as on cybersecurity, networks and systems, and programming and languages.

Computer engineering differs from computer science in that it encompasses both software (programs and applications) and hardware engineering (the architecture of chips and wiring). Software engineers troubleshoot and streamline programs, coming up with new and more efficient coding, while hardware engineers design machinery, devices, and apparatuses.

Computer Science Coursework

Computer science existed in the form of applied mathematics before computers existed. Today, the discipline still focuses more on theory and computation than on computers themselves, and coursework will include current and emerging computer languages and systems. Students are also likely to take at least one required course in computer engineering, but with a greater focus on systems, databases, programming, languages, and theories.

As a junior and senior, you'll likely take the following courses:

  • Computer Security
  • Database Design
  • Theories of Computations and Methods
  • Language Technologies and Theory
  • Computer Graphics
  • Data Structures and Algorithms
  • Operating System Concepts

In some programs, computer science majors have the opportunity to do internships where they work on problems or design issues for specific companies. Colleges may also require students to design an application as a senior project.

Computer Engineering Coursework

Students who pursue this path focus on solving problems in existing computations, rather than on developing the computations themselves (as students who pursue a computer science major do). Moreover, computer engineering students study the relationship between hardware and software, taking courses in electrical engineering, computer science, and programming.

This field combines aspects of electrical engineering with computer science and programming in order to teach students the skills to make computer systems and other hardware — everything from circuit boards to smartphones — function better. Programs are likely to include labs and several engineering, circuit analysis, and design courses. Students will have the option of specializing in a particular discipline or industry during the later portion of their programs.

As a junior and senior, you'll probably take some of these courses:

  • Computer Architecture
  • Electrical Circuitry Analysis
  • Engineering Design
  • The Hardware–Software Interface
  • Hardware Design and Implementation
  • Machine Design
  • Physics for Machinery

Many programs also require a senior project in which students create and present a project that they designed and engineered.

One Student’s Choice

Daniel is entering a computer science program in the fall, and his major will focus specifically on computer languages and systems; it also requires a minor in math. "It's not that I'm not interested in hardware," he tells me. "I am. It's just that I'm fascinated by programming. And I've always loved science. My favorite high school classes are physics and math. And I love solving problems."

"Isn't that what computer engineers do?" I ask him. "Yes, they'll solve problems between the hardware and software, but more so on the hardware,” he tells me. “I want to focus solely on the software side of things."


Computer science majors can expect to have careers in programming, security, and web design, as well as a range of information-technology positions within almost every imaginable company. They can expect both to create and troubleshoot applications, and do work that requires advanced coding.

Hardware engineers can expect to work for companies that create machines, such as IBM or Apple. By contrast, software engineers don't create machines, but rather design the programs that run them. Potential careers include working as a programmer or developer, or for companies that build or create machines, electronics, robotics, or circuitry.

Common Ground

Both computer science and engineering appeal to students who like to solve problems. If you're looking for advanced study and specialization, you might consider a Master of Science or doctoral degree in computing. Since most industries rely on computer processes and systems, job opportunities and specializations are vast.

In making your decision, look at the curricula for both degrees at your prospective college, and talk to professors there to let them know your long-term interests. Consider whether you prefer creating new algorithms and troubleshooting existing ones, or whether you’d rather focus on the relationship between hardware and software. And then look forward to a rewarding career whose growth will persist for many years to come!

Follow this link to discover more about the colleges that offer majors in computer science and engineering.


Buhr, S. (2014, December 14). Girls Who Code Expands To Get More Young Women In Computer Science Majors. Retrieved April 30, 2015, from TechCrunch.

Coligado, L. (2015, February 17). A female computer science major at Stanford: “Floored” by the sexism. Retrieved April 28, 2015, from Fortune.

Larson, S. (2014, September 12). Why So Few Women Are Studying Computer Science A systemic problem. Retrieved April 28, 2015, from ReadWrite.

Sankar, P. (2015, April 20). The pervasive bias against female computer science majors. Retrieved April 28, 2015, from Fortune.

Soper, T. (2014, June 6). Analysis: The exploding demand for computer science education, and why America needs to keep up - GeekWire. Retrieved April 28, 2015, from GeekWire.

Zweben, S. (n.d.). Computing Degree and Enrollment Trends. Computer Research Association, 1-17. Retrieved April 28, 2015, from CRA.

Noodle pros ad Find Noodle Tutors
Article Topics: