About the Undergraduate Program

The undergraduate program in Computer Science at Virginia Tech is both challenging and rewarding.  Through their undergraduate courses, students master the theoretical and practical foundations of computer science, and apply that foundation by choosing from a wide range of advanced topics and application areas, including animation, artificial intelligence, bioinformatics, database, graphics, human-computer interaction, multimedia, networking, parallel computation and software engineering.

Students from around the world come to study computer science at Virginia Tech because of the extensive course offerings and cutting-edge research opportunities. From student organizations such as the Association for Women in Computing, CS-Squared and the Association for Computing Machinery to research projects using the latest technology, there are always opportunities and challenges to help today's students become the technology leaders and innovators of tomorrow.

The Bachelor of Science degree in Computer Science is accredited by the Computing Accreditation Commission of ABET, http://www.abet.org.

Program objectives and student outcomes 

Part of the accreditation process is a clear statement of program objectives and desired outcomes for graduates. 

Our graduates go on to succeed in many career and life paths. However, as the Department of Computer Science we focus on enabling graduates to excel in specific ways, identified in our Program Educational Objectives (PEOs). These PEOs describe what graduates of the Virginia Tech Computer Science program are expected to attain within a few years after graduation.

Within a few years of graduation, alumni will have:

  • demonstrated technical expertise by applying computer science knowledge and practice to solve challenging problems, whether in employment, graduate study, or individual pursuits;
  • advanced their skills in communication, teamwork, and professional and ethical behavior;
  • demonstrated leadership in their technical or professional pursuits;
  • engaged in post-graduate learning through graduate studies, professional improvement opportunities, or self-study;
  • served society through professional or personal contribution.

These objectives are supported by a curriculum that seeks to have its graduates achieve the following student outcomes upon graduation:

  • an ability to apply knowledge of mathematics and science to carry out analysis of computer science problems and design appropriate solutions
  • an ability to use techniques, skills, and modern software development tools necessary for computing practice
  • an ability to identify, formulate, and solve computer science problems
  • an ability to design a computing system to meet desired needs
  • an ability to apply problem-solving strategies to new, unknown, or open-ended situations in computer science
  • knowledge and understanding of the impact of the many sub-disciplines of computer science
  • an ability to function on teams
  • an ability to use written communication skills effectively
  • an ability to use oral communication skills effectively
  • an understanding of professional and ethical responsibility
  • a recognition of the need for and ability to engage in lifelong learning
  • an ability to acquire and use the ever-changing technical knowledge required of computing professionals

Students enrolled and graduated

The table below shows recent trends in the number of computer science majors at Virginia Tech, and in the number of B.S. degrees awarded.  Note that incoming students typically declare the CS major after their first year of study at Virginia Tech.

  10-11 11-12 12-13 13-14 14-15 15-16
CS Majors Enrolled 332 418 420 539 597 665
BS Degrees Awarded 95 117 128 157 178 213