Computer Engineering Undergraduate Program

Faculty from the Computer Science and Electrical & Computer Engineering Departments jointly administer the CpE undergraduate degree program. The curriculum has been carefully designed to assure that students obtain an excellent background in both disciplines.

What does a Computer Engineer do? We work with hardware and software to create modern computing and embedded systems. Graduates of the Bachelors of Science in Computer Engineering Program are successful practitioners and innovators in computer engineering and other fields. Our students learn to analyze, design and implement creative solutions to problems with computer hardware, software, systems and applications. They contribute effectively as team members, communicate clearly and interact responsibly with colleagues, clients, employers and society.

Degree Requirements

The Undergraduate Record represents the official repository for academic program requirements. Students are encouraged to refer to the Undergraduate Record for detailed information about School of Engineering requirements including HSS electives. Engineering guidelines such as course load, academic probation and academic suspension can also be found in the Record. Computer engineering majors must maintain at least a 2.0 in-major GPA, as calculated by SIS. The in-major GPA is the average over all major required courses including required electives.Admission and Transfer information for undergraduate students is provided by the University's Office of Undergraduate Admission.

Core ECE and CS Courses:

1. ECE 2300 Applied Circuits

2. ECE 2330 Digital Logic Design

3. ECE 2600 Electronics

4. ECE 2700 Signals and Systems

5. ECE 3430 Introduction to Embedded Computer Systems

6. ECE 4435 Computer Architecture & Design

7. CS 2100 Data Structures and Algorithms 1

8. CS 2120 Discrete Mathematics and Theory 1

9. CS 2130 Computer Systems and Organization 1

10. CS 3130 Computer Systems and Organization 2

11. CS 3140 Software Development Essentials

Sample CpE Schedule


The UVA computer engineering undergraduate program is accredited by the Engineering Accreditation Commission of ABET (, the national independent organization for accrediting academic programs in engineering and applied science. Our program is designed to meet ABET's requirements for program educational objectives and student outcomes. PROGRAM ENROLLMENT AND GRADUATION INFORMATION is maintained by the UVA School of Engineering and Applied Science.

Each degree program has defined educational objectives, which are broad statements that describe the career and professional accomplishments that the program is preparing graduates to achieve. In addition, each program has defined student outcomes, which are are narrower statements that describe what students are expected to know and be able to do by the time of graduation. These relate to the skills, knowledge, and behaviors that students acquire in their matriculation through the program.

Program Educational Objectives

Graduates of the computer engineering program at the University of Virginia:

  1. Analyze, design and implement creative solutions to world challenges typically using computer hardware, software, systems and applications;
  2. Contribute effectively as team members, communicate clearly and interact responsibly with colleagues, clients, employers and society.

Engineering Student Outcomes

The BS in Computer Engineering program at the University of Virginia enables students to achieve, by the time of graduation:

  • an ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics;
  • an ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors;
  • an ability to communicate effectively with a range of audiences;
  • an ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts;
  • an ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives;
  • an ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions; and
  • ​an ability to acquire and apply new knowledge as needed, using appropriate learning strategies.