Computer Engineering

Computer Engineering is a field that combines training in classical Electrical Engineering disciplines with in-depth preparation in Computer Science topics. The result is a trained problem solver who understands both the hardware and software aspects of computers and who can design and implement solutions on both sides of the hardware/software interface. Computer engineers are employed across the wide range of growing industries associated with communications, control, and signal processing and microelectronic fabrication: from the “smart grid” to “software defined radios”; from intelligent vehicle systems to information security for national and commercial customers; from telecommunications to medical instrumentation; from consumer electronics to space-based systems; from microprocessors to supercomputers to MP3 players; from the design of integrated circuits to development of computer-vision capabilities.

Our program provides students with challenging hands-on experiences through a broad and rigorous curriculum that includes exposure to multiple programming languages and development tools in their software courses, practical labs featuring up-to-date equipment in their hardware courses, and coverage of such advanced areas as embedded systems design, digital signal processing, and software engineering. All students participate in a senior-year Capstone project that culminates their training.

Required Technology

The UMBC Department of Computer Science and Electrical Engineering requires all incoming freshmen and incoming transfer students to have a laptop computer. Technology requirements are available on this webpage:

Major Requirements

Students pursuing a Bachelor’s of Science in Computer Engineering must complete 125 credits of required and elective courses, as shown in the CMPE Four-Year Plan (2014 and later). These requirements include the General Education Program requirements established by the University for the Bachelor of Science Degree. The Computer Engineering degree offers three tracks: Electronic Systems, Communications, and Cybersecurity. The Electronic Systems track focuses on large electronic systems and networks. Students who specialize in this track will emerge with experience in VLSI (very large scale integrated) design and the design of programmable logic devices, including FPGAs (fully programmable gate arrays). The Communications track focuses on computer and electrical communications networks. Students who specialize in this track will emerge with experience in the electromagnetic and signal processing techniques that are needed to design these networks. The Cybersecurity track emphasizes security of computer systems, along with in depth design of computer hardware topics closely related to the Electronic Systems Track.

Students who started the program before 2014 should review the CMPE Four-Year Plan (pre 2014).

Combined BS/MS Program

Students who see Graduate School in their future can choose to enroll in the combined B.S./ M.S. program, which will allow them to speedily complete a B.S. in Computer Engineering and an M.S. in Computer Engineering OR Electrical Engineering. For information about requirements and guidelines, go here.

Meet the Students

Click on the students’ photos to hear what they have to say about life as a Computer Engineering major at UMBC.


Contact the Computer Engineering Undergraduate Program Director, Dr. Gary Carter (

How to Apply

For information about the application process, visit the Office of Undergraduate Admissions. Need financial help? Visit the Office of Financial Aid & Scholarships for information about financial aid and merit-based scholarships.

Further details can be found by following these links: