Feb 02, 2026  
Undergraduate Record 2025-2026 
    
Undergraduate Record 2025-2026

Computer Engineering, B.S.


Return to: School of Engineering and Applied Science: Degree Programs  


Computer Engineering (https://engineering.virginia.edu/computer-engineering-program) is an exciting field in which students learn and practice the development of hardware and software systems that work together to solve a problem or achieve a goal.  Computer engineers often develop embedded computer systems that interact with the world through sensors and provide direct control of some physical entity. 

Faculties from the Computer Science and Electrical & Computer Engineering departments jointly administer the computer engineering undergraduate degree program at the University of Virginia.

Program Educational Objectives: Graduates of the computer engineering program at the University of Virginia will be 1) analyzing, designing, and implementing creative solutions to world challenges typically using computer hardware, software, systems, and applications and 2) contributing effectively as team members and communicating clearly and interacting responsibly with colleagues, clients, employers, and society.

Student Outcomes: At the time of graduation, students will have an ability to:

  1. identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics,
  2. 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,
  3. communicate effectively with a range of audiences,
  4. 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,
  5. function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives,
  6. develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions, and
  7. acquire and apply new knowledge as needed, using appropriate learning strategies.

Computer Engineering Curriculum (128 credits)


Please use the following link to view all Computer Engineering course offerings: School of Engineering and Applied Science: Courses 

All students completing the Bachelor of Science degree in Computer Engineering must fulfill the following requirements.

School of Engineering and Applied Science General Requirements (45 credits)


Computer Engineering students must complete the unified set of general requirements for all engineering majors. More information can be found on the SEAS Curricular Requirements page. These courses are often completed during the first two years in SEAS, with the exception of STS 4500 and 4600, which are taken during the fall and spring of the fourth year, respectively.

Introduction to Programming


All SEAS students must complete one Introduction to Programming course as a part of their general SEAS requirements. Students may also complete this requirement through Advanced Placement (AP), International Baccalaureate (IB), or dual-enrollment credit. Some students with programming experience may wish to take the place-out test, which satisfies the requirement but does not award degree credit. Please contact the Computer Science department for more information about place-out tests.

Math and Science Elective


Students must complete a 3 credit Math and Science Elective chosen from: BIOL 2100, BIOL 2200, CE 2001, CHEM 1420, EVSC 2800, EVSC 3200, EVSC 3300, MSE 2090, PHYS 2620, or an approved 2000-level or higher APMA course not already required by a student’s major and does not duplicate material from another APMA course.

Additional Mathematics Courses (7 credits)


CpE majors must take two (2) additional courses in Applied Mathematics beyond the SEAS General Requirements.  Equivalent courses from the Department of Mathematics may be substituted for matching APMA courses:

Electrical and Computer Engineering Courses (20.5 credits)


These courses are a set of courses students take within the electrical engineering major and comprise many of the prerequisites for upper-level courses. 

Computer Science Courses (18 credits)


These courses are a set of courses students take within the computer science major and comprise many of the prerequisites for upper-level courses.

Electrical and Computer Engineering or Computer Science Courses (15 credits)


CpE majors must take fifteen (15) credits of ECE or CS courses at the 3000 level or higher. It is highly encouraged that students choose a focus path that groups 15 credits of ECE and CS electives into a cohesive depth of study. Information about focus paths is available on the CpE advising aids page. 

  • Must have an ECE or CS mnemonic.
  • All must be at the 3000 level or higher. At least two of these CS/ECE electives must be 4000 level or above.
  • Must not be a required core course.

Major Design Experience (4.5 credits)


CpE majors must take the CPE major design experience (capstone course).  

Humanities and Social Science (HSS) Electives (9 credits)


CpE majors must complete a total of nine (9) credits of HSS electives.  HSS electives are selected from an approved list (available in A122 Thornton Hall or in the UVA Engineering Undergraduate Handbook) of humanities and social science offerings. Communication courses in the student’s native or first language, regardless of their level, may not be used to satisfy this requirement. See the SEAS page regarding electives for more information.

Unrestricted Electives (9 credits)


CpE majors must complete nine (9) credits of unrestricted electives. Unrestricted electives may be chosen from any graded course in the University except mathematics courses below MATH 1310; courses that substantially duplicate any others offered for the degree, including PHYS 2010, PHYS 2020, CS 1010, CS 1020; any introductory programming course; or SCPS courses.  See the SEAS page regarding electives for more information.

Public Professional Licensure Disclosure


As a member of the State Authorizations Reciprocity Agreement, the University of Virginia (UVA) is authorized to provide curriculum in a distance learning environment to students located in all states in the United States except for California. (34 CFR 668.43(a)(6)& 34 CFR 668.72(n)).

Upon completion of the Bachelor of Science in Computer Engineering at the UVA School of Engineering, graduates may be eligible for initial professional licensure in another U.S. state by applying to the licensing board or agency in that state.

Please visit the University’s state authorization web pages to make an informed decision regarding which states’ educational requirements for initial licensure are met by this program. (668.43(a)(5) (v)(A) - (C))

Enrolled students who change their current (or mailing) address to a state other than Virginia should update this information immediately in the Student Information System as it may impact their ability to complete internship, practicum, or clinical hours, use Title IV funds, or meet licensure or certification requirements in the new state. (34 CFR 668.402).