Degree programs in computer engineering are offered at the bachelor's, master's and doctoral degree levels. Bachelor's programs explore the theoretical foundations of communication systems, signal processing, and circuit design, while master's and doctoral programs are typically more focused on research and may offer coursework in quantum mechanics and computer sensing technology, among other topics.
Computer hardware and software engineers typically need at least a bachelor's degree in the field, according to the U.S. Bureau of Labor Statistics. However, a graduate degree can prepare computer engineers to become project leaders or managers, and a doctoral degree can prepare them to teach at the college level.
Before applying to a graduate program in computer engineering, prospective students need to have a bachelor's degree in engineering or a related science.
Bachelor of Science in Computer Engineering
Students in computer engineering bachelor's programs may learn how to design projects for defense applications, like analyzing information, or making elder care facilities safer and more responsive to human needs. These programs also offer hands-on experience through participation in lab work. Since computers are integrated into many facets of modern life, graduates are able to collaborate with interdisciplinary teams on projects like geospatial intelligence applications. Admission seekers to these four-year programs are typically required to have completed high school. Some schools offer tracks that combines the Bachelor of Science and Master of Science training into a five-year program. Relevant coursework includes:
- Circuit analysis
- Differential equations
- Operating Systems
Master of Science in Computer Engineering
These 18- to 24-month programs, available through both online and on-campus delivery, prepare graduates to design, test, develop, and evaluate networks, systems, and their components. Students wanting to focus on a specific subset of the field are encouraged to opt for a thesis track. A non-thesis track is available for students desiring a larger survey of coursework. Preparation for careers innovating new solutions for design flaws requires a background in:
- Artificial intelligence
- Computer architecture
- Systems interoperability
Doctor of Philosophy in Computer Engineering
These programs can offer courses in software engineering, machine learning, and digital systems so that students can prepare to work on parallel processing, embedded systems, and computer vision applications. Graduates are prepared for positions in research and academia, working on telecommunications networks, simulation systems, and machine learning. Including the research and writing of a thesis, these programs take four to six years to complete; some programs offer alternate schedules for students also working full-time jobs.
Programs prepare students with instruction on both the theoretical background and the practical application of theory to neural networks and the design of hardware, software, and easily testable systems. Because doctoral students tailor their course of study to the completion of a dissertation, programs offer relevant training in:
- Dependable computing
- Nonlinear acoustics
- Optical processing
- Solid-state electronics
- Technical entrepreneurship
Popular Career Options
Graduates may find themselves consulting or working directly for telecommunications, consumer electronics and video game industries. Bachelor's degree holders can be qualified for posts as:
- Hardware engineers
- Systems analysts
- Test engineers
According to the U.S. Bureau of Labor Statistics (BLS), job opportunities for computer hardware engineers were expected to increase 6% from 2018-2028 (www.bls.gov). The same source showed that professionals employed in this field earned a median annual wage of $114,600 as of 2018.
At the bachelor's degree level, students in computer engineering programs learn how to design computer systems for a number of uses, including defense and safety, as well as improve user interactions. Graduate programs teach students how to design advanced networks or conduct research in computer engineering.