DEGREES AVAILABLE: Major
Computer science is the catalyst for every evolutionary – and revolutionary – step in computer development.
From mathematical theories, data structures and algorithms to the operating systems and programs that employ them, an understanding of computer science is essential if you wish to develop the next advances in computer technology and applications.
The Computer Science program at UC Irvine is internationally recognized for its unique group of faculty and researchers, outstanding students and cutting edge educational programs.
Is Computer Science for me?
The Computer Science major emphasizes the principles of computing that underlie our modern world, and provides a strong foundational education to prepare students for the broad spectrum of careers in computing. This major can serve as preparation for either graduate study or a career in industry. Students receive a solid background in low-level architecture and systems; middle-level infrastructure, algorithms, and mathematical foundations. This is a highly flexible degree that allows students to explore a broad range of topics in modern computing. In order to achieve some focus in their upper-division studies, students are required to satisfy the requirements for one of the eight specializations described below.
Algorithms. This specialization focuses on fundamental computational techniques, including their analysis and applications to topics in computer vision, computer games, graphics, artificial intelligence, and information retrieval. Topics include data structures, graph and network algorithms, computational geometry, probabilistic algorithms, complexity theory, and cryptography.
Architecture and Embedded Systems. This specialization integrates principles of embedded systems, software, hardware, computer architecture, distributed systems and networks, and prepares students to design and create efficient hardware/software architectures for emerging application areas. Students in this specialization will build upon a strong foundation in software and hardware and learn how to design networked embedded systems, and efficient computer architectures for a diverse set of application domains such as gaming, visualization, search, databases, transaction processing, data mining, and high-performance and scientific computing.
Bioinformatics. This specialization introduces students to the interdisciplinary intersection of biology and medicine with computer science and information technology. Students who complete the specialization will understand biomedical computing problems from the computer science perspectives, and be able to design and develop software that solves computational problems in biology and medicine.
General Computer Science. This specialization allows students to acquire a well-rounded knowledge of computer science that may be tailored to their individual interests. Students choose 11 upper-division computer science courses, including two project courses. This specialization will appeal to those who are interested in a broad education in computer science, or who wish to create their own unique specialization not found in the current list of (other) specializations under this major.
Information. This specialization is intended to prepare students for working with and developing a wide variety of modern data and information systems. Topics covered by this concentration include database management, information retrieval, Web search, data mining, and data-intensive computing.
Intelligent Systems. This specialization will introduce students to the principles underlying intelligent systems, including topics such as representing human knowledge, building automated reasoning systems, developing intelligent search techniques, and designing algorithms that adapt and learn from data. Students in this specialization will use these principles to solve problems across a variety of applications such as computer vision, information retrieval, data mining, automated recommender systems, bioinformatics, as well as individually designed projects.
Networked Systems. This specialization focuses on Internet architecture, Internet applications, and network security. It also encourages students to learn about operating systems, databases, search, programming, embedded systems, and performance.
Systems and Software. This specialization deals with principles and design of systems and software. It emphasizes the interaction between software and the computing infrastructure on which it runs and the performance impact of design decisions. Core topics include the hardware/software interface, languages and compilers, operating systems, parallel and distributed computing. Elective topics include networking, security, graphics, and databases.
Visual Computing. This specialization encompasses the digital capture, processing, synthesis and display of visual data such as images and video. This specialization includes computer vision, image processing, and graphics, and covers such topics as the representation of 3D objects, visual recognition of objects and people, interactive and photo-realistic image rendering, and physics and perception of light and color.
What do I take?
How do I choose a CS Specialization?
Your specialization should by driven by your individual interests. Please use the following resources to guide you:
- Watch our CS specialization Q & A with ICS Student Affairs and Prof. Ian Harris. [transcript]
- View the CS specialization slideshow discussed in the Q & A.
- Explore CS research areas to identify and connect with faculty.
- Check out the syllabi of specialization courses and find out which overlap.
- For a detailed list of what courses are required for each specialization, consult the General Catalogue.
- When you’re ready to declare, submit a CS specialization request form online.
What can I do with this degree?
Graduates of the Computer Science program will be in a position to pursue a variety of careers that involve the design and development of embedded systems, programming languages, compilers, networks and operating systems.
They can be principal designers or involved in implementation, typically at companies that design, implement and sell these products. They may find themselves in charge of large-scale deployments and/or customizations at the organizations that use them.
Finally, the strong scientific preparation allows students to become involved in such areas as artificial intelligence and computational biology – whether in graduate school or industry.
Many students also go on to graduate school, continuing their studies, conducting research, and earning graduate degrees in software engineering, computer science, information science, management and law.
Still not sure?
Prospective and current UCI students interested in learning more about the Bren School’s degree options are encouraged to contact us at email@example.com.