Regardless of your major, you can enhance your career with a background in computer sciences. The computer sciences certificate is designed to deepen and validate your computing savvy for your future career prospects and/or graduate school. Compared to a major in computer sciences, the certificate requires fewer courses and offers more flexibility in course selection

All undergraduate, degree-seeking students are eligible to declare the computer sciences certificate, except for students majoring in computer sciences, and electrical or computer engineering. 

Information on declaring the certificate is available on the Department of Computer Sciences advising pages.



Five courses, at least 12 credits, in computer sciences, including: 112-19
Programming II (Comp Sci 367 may also be used if completed prior to Summer 2018.)
At least two COMP SCI courses at the 400 level or higher, selected from the course list below.
Two additional COMP SCI courses, at any level, selected from the course list below.


COMP SCI/​MATH  240 Introduction to Discrete Mathematics3
COMP SCI/​E C E  252 Introduction to Computer Engineering2
COMP SCI 270 Fundamentals of Human-Computer Interaction3
COMP SCI 310 Problem Solving Using Computers3
COMP SCI/​E C E  352 Digital System Fundamentals3
COMP SCI/​E C E  354 Machine Organization and Programming3
COMP SCI 369 Web Programming3
COMP SCI 400 Programming III3
COMP SCI 407 Foundations of Mobile Systems and Applications3
COMP SCI 412 Introduction to Numerical Methods3
COMP SCI/​I SY E/​MATH  425 Introduction to Combinatorial Optimization3
COMP SCI/​E C E/​MATH  435 Introduction to Cryptography3
COMP SCI/​STAT  471 Introduction to Computational Statistics3
COMP SCI/​MATH/​STAT  475 Introduction to Combinatorics3
COMP SCI/​E C E  506 Software Engineering3
COMP SCI/​MATH  513 Numerical Linear Algebra3
COMP SCI/​MATH  514 Numerical Analysis3
COMP SCI 520 Introduction to Theory of Computing3
COMP SCI/​E C E/​I SY E  524 Introduction to Optimization3
COMP SCI/​I SY E/​MATH/​STAT  525 Linear Programming Methods3
COMP SCI/​I SY E  526 Advanced Linear Programming3-4
COMP SCI/​E C E/​M E  532 Matrix Methods in Machine Learning3
COMP SCI/​E C E  533 Image Processing3
COMP SCI 534 Computational Photography3
COMP SCI 536 Introduction to Programming Languages and Compilers3
COMP SCI 537 Introduction to Operating Systems4
COMP SCI 538 Introduction to the Theory and Design of Programming Languages3
COMP SCI/​E C E/​M E  539 Introduction to Artificial Neural Network and Fuzzy Systems3
COMP SCI 540 Introduction to Artificial Intelligence3
COMP SCI 545 Natural Language and Computing3
COMP SCI 547 Computer Systems Modeling Fundamentals3
COMP SCI/​E C E  552 Introduction to Computer Architecture3
COMP SCI/​I SY E/​M E  558 Introduction to Computational Geometry3
COMP SCI 559 Computer Graphics3
COMP SCI 564 Database Management Systems: Design and Implementation4
COMP SCI/​B M I  567 Medical Image Analysis3
COMP SCI 570 Introduction to Human-Computer Interaction4
COMP SCI/​B M I  576 Introduction to Bioinformatics3
COMP SCI 577 Introduction to Algorithms4
COMP SCI/​DS  579 Virtual Reality3
COMP SCI/​I SY E  635 Tools and Environments for Optimization3
COMP SCI 640 Introduction to Computer Networks3
COMP SCI 642 Introduction to Information Security3
COMP SCI 679 Computer Game Technology3
COMP SCI 639 Undergraduate Elective Topics in Computing3-4


A 2.000 GPA must be earned on all courses meeting certificate requirements.
Students may complete no more than two courses toward the certificate post-baccalaureate as a University Special student. Courses taken post-baccalaureate as a University Special student must be completed within three regular academic semesters from the time of degree award (excluding summer) in order to be used toward the certificate.
For students who complete the certificate while enrolled in an undergraduate degree-seeking program, at least 7 credits must be completed in residence.
For students who complete the certificate post-baccalaureate as a University Special student, at least 12 credits must be completed in residence.

Undergraduate/Special Student Certificate

This certificate may be completed within the context of an undergraduate degree or as a Special student after an undergraduate degree has been awarded from any institution. The certificate may be completed in its entirety while enrolled as a Special student. Candidates are encouraged to contact the certificate coordinator to discuss course enrollment and the sequencing of certificate requirements. 

1. Recognize and apply the core principles of Computing (abstractions and algorithms) to solve real-world problems.

2. Use fundamental and detailed knowledge, skills, and tools (e.g., specific algorithms, techniques methods, etc.) of computer science and develop the ability to acquire new knowledge, skills, and tools.

3. Design, implement, and evaluate software in multiple programming paradigms and languages.

4. Can solve problems by applying a broad toolbox of knowledge and techniques.


The undergraduate coordinators in the Department of Computer Sciences are ready to help students with questions about the major, L&S degree requirements and policy, and course selection. Information on academic advising for students interested or declared in the Computer Students major is posted to the Computer Sciences advising page

Professors A. Arpaci-Dusseau, R. Arpaci-Dusseau, Bach, Barford, Banerjee, Cai, Doan, Dyer, Ferris, Gleicher, Hill, Jha, Livny, Miller, Patel, Reps, Ron, Shavlik, Sohi, van Melkebeek, Wood, Wright, Zhu

Associate Professors Akella, Chawla, Liblit, Mutlu, Sankaralingam, Swift

Assistant Professors Albarghouthi, D'Antoni, Gupta, Koutris, Sifakis

Faculty Associates Dahl, Deppeler, Hasti, Legault, Lewis-Williams, Skrentny, Williams