Skip to main content

Computer Science vs Computer Engineering πŸ§‘‍πŸ’»

 

What is Computer Engineering?

Computer engineering is a broad field that sits in between the hardware of electrical engineering and the software of computer science. When computer engineers design hardware, they focus on what the hardware is trying to accomplish as opposed to the nitty-gritty details of how to lay out the transistors. They design the processors for systems of all sizes, whether they look like computers or not. The processors go into desktop computers, smartphones, tablet computers, supercomputers, kitchen appliances, automobiles, space vehicles, and more. Specialized processors like GPUs (graphics processing units) or hardware to accelerate AI algorithms are also designed by computer engineers.

A special focus of computer engineers is the connections between devices, whether there is a cord making the connection or if it's a wireless connection. The computer engineer doesn't care so much about the actual voltages or wireless signals, but is more interested in the protocol that is used to send the data.

What's the Difference Between Computer Engineering and Computer Science?

Computer engineering bridges the divide between hardware and software. While computer scientists tend to focus on the theory of computer systems, including software and programming, computer engineers understand computer systems in their entirety.

Unlike most computer scientists, computer engineers are comfortable working with both hardware and software. They focus on how hardware and software interact with one another and have the ability to test design trade-offs between the two. Computer engineers often work on electronic aspects of the system and can design, build, and program complete computer systems from scratch.

What Do Computer Engineers Do?

Many computer engineers work less with computer hardware and spend more time writing code. Rather than the fancy graphical applications that end users interact with directly, computer engineers tend to focus on the "invisible" code that talks with the hardware within a system.

When a smartphone wants to know its location, it asks the GPS chip. A computer engineer writes the code to interface with the GPS chip to gather that data and present it to the application. This kind of invisible interface can be found in home computers, where a user installs a driver written by a computer engineer to support a printer or other connected device. It can also be found in things that don't look like computers at all—like kitchen appliances and cars. In fact, a modern car has anywhere from 10,000,000 to 100,000,000 lines of code running in it.

Many computer engineers work in embedded systems, designing the hardware and software for these computing systems that don't look like computers. This spectrum of knowledge between hardware and software allows the computer engineer to work at both extremes, as well. Some computer engineers will spend their time designing and populating printed circuit boards (PCBs) or other hands-on hardware design. Some will leverage their knowledge of programming to write the applications that consumers use directly on smartphones, desktop computers, and supercomputers. Many computer engineers will slide along this spectrum throughout their careers. Some may do things from the whole spectrum on any given day at work.

Follow Tech with Martony For More

Comments