Computer Science Major & Courses

Computer science majors have options in designing their course of study, as well as the ability to pursue concentrations.

About the major

At UT Computer Science, undergraduate students receive a rigorous educational experience, with options to pursue more than 50 courses that span the full spectrum of topics in modern computer science. Students in the major develop a strong background in hardware architecture and mathematics as a foundation on which to build their computing education, and they have many options to select a program of study and out-of-class opportunities matched to their interests.

    All about Computer Science at UT Austin

    Concentrations in Computer Science

    Concentrations are courses grouped to teach students about a particular area of computer science and build skills in that area. They are not listed on the degree itself (i.e., students graduate with a degree in Computer Science.)

    • Computer Systems: Computer systems is a broad field of study that offers students the opportunity to develop expertise in operating systems, distributed systems, networks and security. These skill sets support a wide array of applications and technologies such as cloud computing, virtual machine technology, network and systems reliability and the Internet of Things. 

    • Cybersecurity: The Cybersecurity concentration (formerly known as INFOSEC) is available to students who want to intensively study cybersecurity and privacy. Students will receive instruction on a wide range of cybersecurity related topics like network security and cryptography. 

    • Game Development: Texas has the second largest concentration of game studios in the U.S., and as mobile, online and social platforms improve, more and more opportunities will arise. Game development is an inherently interdisciplinary field, which is why the department of  Computer Science has a partnership between Arts and Entertainment Technology (AET, College of Fine Arts) and Radio-Television-Film (RTF, Moody College of Communication). Together they have jointly developed the world-class Game and Mobile Media Applications (GAMMA) program. GAMMA students will take classes like computer graphics, game technology and a project-based capstone course. 

    • Machine Learning and Artificial Intelligence: The concentration for Machine Learning and Artificial Intelligence is ideal for students who desire to learn how to program computer systems to 'learn' from data and perform complex tasks normally associated with human-level intelligence. AI/ML includes the opportunity to study topics such as computer vision, natural language processing, robotics, machine learning, deep learning and knowledge acquisition and representation. 

    • Mobile Computing: Mobile computing has revolutionized the way we interact with the world. This concentration explores important topics in mobile computing, including internet and wireless networks, mobile app development, cloud computing, network security and Internet of Things. These topics are applicable to a virtually endless array of industries. 

    • Big Data: The era of Big Data has ushered in a host of exciting opportunities for computer scientists. Students in our data concentration will study both advanced computational and analytic tools such as data mining, large-scale optimization, data analytics, data storage and data-intensive computing, as well as modern interdisciplinary applications of big data in industries as diverse as healthcare, transportation, energy and finance.

    Options in Computer Science

    Students may opt to pursue degrees with special honors and honors programs, specialize in teaching in computer science (option 5) and pursue an integrated program to secure both bachelor’s and master’s degrees in five years (option 4). To learn more, please see All Undergraduate Programs.

    Learn more about our undergraduate program

    Courses Computer Science Majors Take

    Get a sense for some of the courses that many of our majors take below. A more complete list for each catalog may be found when you search for your degree option by the year of entry or catalog.

    Computer science students all take six core classes, two of each in Programming, Systems and Theory. Students will be taking three entry-level courses, followed by three transitional courses before they move into their upper-division coursework and any concentration. The department’s curriculum summary provides more information.

    CS students are advised in the Computer Science Advising Center and must apply to CS for upper-division status.

    Entry-Level Requirements

    Natural Sciences students declare a degree and a major after receiving good grades in key courses. For CS, these are typically:

    • Introduction to Programming (CS 312)
    • Data Structures (CS 314)
    • Discrete Math for Computer Scientists (CS 311)

     

     
    Examples of Courses

    Students take additional courses in computer science and other disciplines, such as:

    • Algorithms and Complexity
    • Computational Organization and Architecture
    • Principles of Computer Systems
    • Biology, Chemistry or Physics
    • Introduction to Probability and Statistics 
    • Upper-division Mathematics