computer-sciences

Our graduates discover that computer science (CS) opens up a world of possibilities. 

Computer scientists enjoy exceptional career opportunities, in settings ranging from large, established companies to adventurous new start-ups. They are also well qualified to pursue graduate study in a number of fields.

Our students are creative, analytical problem-solvers. This is a rich, collaborative and varied field that you will find challenging, no matter where your individual interests lie.

And there is more to CS than programming. While software engineering is an important skill, computer scientists also work with robots and other physical devices, design hardware that runs faster and more efficiently, and apply machine learning techniques to gain insight from large data sets—to name just a few examples.

Because CS has become highly interconnected with medicine, business and many other fields, it is a great fit with other interests you may have. You will enjoy a strong career outlook while having an impact on society.

DECLARATION REQUIREMENTS

To declare the computer sciences major, students must meet the following requirements:

University General Education Requirements

All undergraduate students at the University of Wisconsin–Madison are required to fulfill a minimum set of common university general education requirements to ensure that every graduate acquires the essential core of an undergraduate education. This core establishes a foundation for living a productive life, being a citizen of the world, appreciating aesthetic values, and engaging in lifelong learning in a continually changing world. Various schools and colleges will have requirements in addition to the requirements listed below. Consult your advisor for assistance, as needed. For additional information, see the university Undergraduate General Education Requirements section of the Guide.

General Education
  • Breadth—Humanities/Literature/Arts: 6 credits
  • Breadth—Natural Science: 4 to 6 credits, consisting of one 4- or 5-credit course with a laboratory component; or two courses providing a total of 6 credits
  • Breadth—Social Studies: 3 credits
  • Communication Part A & Part B *
  • Ethnic Studies *
  • Quantitative Reasoning Part A & Part B *

* The mortarboard symbol appears before the title of any course that fulfills one of the Communication Part A or Part B, Ethnic Studies, or Quantitative Reasoning Part A or Part B requirements.

College of Letters & Science Breadth and Degree Requirements: Bachelor of Science (B.S.)

Students pursuing a bachelor of science degree in the College of Letters & Science must complete all of the requirements below. The College of Letters & Science allows this major to be paired with either a bachelor of arts or a bachelor of science curriculum. View a comparison of the degree requirements here.

Bachelor of Science DEGREE REQUIREMENTS

Mathematics Two (2) 3+ credits of intermediate/advanced level MATH, COMP SCI, STAT
Limit one each: COMP SCI, STAT
Foreign Language Complete the third unit of a foreign language
Note: A unit is one year of high school work or one semester/term of college work.
L&S Breadth
  • Humanities, 12 credits: 6 of the 12 credits must be in literature
  • Social Sciences, 12 credits
  • Natural Sciences, 12 credits: must include 6 credits in biological science; and must include 6 credits in physical science
Liberal Arts and Science Coursework 108 credits
Depth of Intermediate/Advanced work 60 intermediate or advanced credits
Major Declare and complete at least one (1) major
Total Credits 120 credits
UW-Madison Experience 30 credits in residence, overall
30 credits in residence after the 90th credit
Minimum GPAs 2.000 in all coursework at UW–Madison
2.000 in intermediate/advanced coursework at UW–Madison

Non–L&S Students PURSUING AN L&S MAJOR

Non–L&S students who have permission from their school/college to pursue an additional major within L&S only need to fulfill the major requirements and do not need to complete the L&S breadth and degree requirements above.  Please note that the following special degree programs are not considered majors so are not available to non-L&S-degree-seeking candidates:  

  • Applied Mathematics, Engineering and Physics (Bachelor of Science–Applied Mathematics, Engineering and Physics)
  • Journalism (Bachelor of Arts–Journalism; Bachelor of Science–Journalism)
  • Music (Bachelor of Music)
  • Social Work (Bachelor of Social Work)

Requirements for the Major

 BASIC COMPUTER SCIENCES

COMP SCI/​MATH  240 Introduction to Discrete Mathematics3
COMP SCI/​E C E  252 Introduction to Computer Engineering2
COMP SCI 300 Programming II3
COMP SCI/​E C E  354 Machine Organization and Programming3
COMP SCI 400 Programming III3
Total Credits14

 BASIC CALCULUS

Complete one of these sequences:9-14
Calculus and Analytic Geometry 1
and Calculus and Analytic Geometry 2
Calculus with Algebra and Trigonometry I
and Calculus with Algebra and Trigonometry II
and Calculus and Analytic Geometry 2
Topics in Calculus I
and Topics in Calculus II
Total Credits9-14

ADDITIONAL MATHEMATICS (beyond calculus)

Complete two courses for at least 6 credits:6-10
Introduction to Numerical Methods 1
Introduction to Cryptography
Numerical Linear Algebra
Numerical Analysis
Linear Optimization
Advanced Linear Programming
Introduction to Random Signal Analysis and Statistics
Calculus--Functions of Several Variables
Linear Algebra and Differential Equations
Elementary Matrix and Linear Algebra
Topics in Multi-Variable Calculus and Linear Algebra
Techniques in Ordinary Differential Equations
Applied Mathematical Analysis
Applied Mathematical Analysis
An Introduction to Probability and Markov Chain Models
Linear Algebra
Topics in Multi-Variable Calculus and Differential Equations
Introduction to the Theory of Probability
Applied Linear Algebra
College Geometry I
Introduction to Combinatorics
Analysis I
Modern Algebra
Modern Algebra
Modern Number Theory
Mathematical Logic
Introduction to Probability and Mathematical Statistics I
Introduction to Probability and Mathematical Statistics II
Introduction to Theory and Methods of Mathematical Statistics I
Introduction to Theory and Methods of Mathematical Statistics II
Introductory Applied Statistics for Engineers (recommended)

THEORY of computer science

Complete one:3
Introduction to Algorithms (recommended)
Introduction to Theory of Computing

 SOFTWARE & HARDWARE

Complete two:6-8
Foundations of Mobile Systems and Applications
Software Engineering
Introduction to Programming Languages and Compilers
Introduction to the Theory and Design of Programming Languages
Introduction to Operating Systems
Introduction to Computer Architecture
Database Management Systems: Design and Implementation
Introduction to Computer Networks
Introduction to Information Security

 APPLICATIONS

Complete one:3
Introduction to Numerical Methods 1
Introduction to Combinatorial Optimization
Numerical Linear Algebra
Numerical Analysis
Introduction to Optimization
Linear Optimization
Computational Photography
Introduction to Artificial Intelligence
Natural Language and Computing
Computer Systems Modeling Fundamentals
Computer Graphics
Introduction to Human-Computer Interaction

ELECTIVES

Complete two:6-8
Foundations of Mobile Systems and Applications
Introduction to Numerical Methods
Introduction to Combinatorial Optimization
Introduction to Cryptography
Introduction to Computational Statistics
Introduction to Combinatorics
Software Engineering
Numerical Linear Algebra
Numerical Analysis
Introduction to Theory of Computing
Introduction to Optimization
Linear Optimization
Advanced Linear Programming
Matrix Methods in Machine Learning
Image Processing
Computational Photography
Introduction to Programming Languages and Compilers
Introduction to Operating Systems
Introduction to the Theory and Design of Programming Languages
Introduction to Artificial Neural Network and Fuzzy Systems
Introduction to Artificial Intelligence
Natural Language and Computing
Computer Systems Modeling Fundamentals
Introduction to Computer Architecture
Introduction to Computational Geometry
Computer Graphics
Database Management Systems: Design and Implementation
Medical Image Analysis
Introduction to Human-Computer Interaction
Introduction to Bioinformatics
Introduction to Algorithms
Virtual Reality
Tools and Environments for Optimization
Introduction to Computer Networks
Introduction to Information Security
Computer Game Technology
Undergraduate Elective Topics in Computing

Residence and quality of work

  • 2.000 GPA in all COMP SCI courses and courses counting toward the major
  • 2.000 GPA on 15 upper-level credits, taken in residence 2
  • 15 credits in COMP SCI, taken on campus

HONORS IN THE MAJOR

Students may declare Honors in the Computer Sciences Major in consultation with the Computer Sciences undergraduate coordinator(s).  To earn Honors in the Major in Computer Sciences, students must satisfy both the requirements for the major (above) and the following additional requirements:

  • Earn a minimum 3.300 University GPA
  • Earn a minimum 3.500 GPA for all COMP SCI and major courses
  • Complete one COMP SCI course numbered 500 through 699, taken for Honors with a grade of B or higher
  • Complete COMP SCI 681 Senior Honors Thesis and COMP SCI 682 Senior Honors Thesis for a total of 6 credits. 3

DISTINCTION IN THE MAJOR

Distinction will be awarded at graduation to majors who are not declared for Honors in the Major, and who meet this criteria:

  • Earn a minimum 3.750 GPA or higher in all COMP SCI and major courses, or
  • Earn a minimum 3.500 GPA in all COMP SCI and major courses, plus:
  • Complete one COMP SCI courses numbered 500 through 699 for Honors credit and at least a "B" grade
  • Complete COMP SCI 691 Senior Thesis - COMP SCI 692 Senior Thesis for at least 6 credits
  1. Recognize and apply the core principles of Computing (abstractions and algorithms) to solve real-world problems.
  2. Describe and apply the theoretical foundations of Computer Science (e.g., complexity analysis) in practical settings.
  3. Demonstrate knowledge of key elements of computer systems, e.g., hardware, operating systems, networks.
  4. 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.
  5. Design, implement, and evaluate software in multiple programming paradigms and languages.
  6. Develop a substantial piece of software, and recognize the challenges of designing and developing software.
  7. Exhibit technical (designing, implementing, and testing) and teamwork (communication, collaboration, and professional practice) skills in order to develop solutions as a computer science practitioner.
  8. Can solve problems by applying a broad toolbox of knowledge and techniques.
First Year
FallCreditsSpringCredits
COMP SCI 2004COMP SCI 3003
COMP SCI 304 (optional companion course)1COMP SCI/​E C E  2522
MATH 2215MATH 2224
Communications Part A3Ethnic Studies3
Social Science Breadth3Foreign Language4
 16 16
Second Year
FallCreditsSpringCredits
COMP SCI 4003COMP SCI/​E C E  3543
COMP SCI/​MATH  2403Additional Math (MATH 340 recommended)3
INTER-LS 2101Physical Science Breadth3
Communications Part B3Humanities Breadth3
Literature Breadth3Social Science Breadth3
Elective2 
 15 15
Third Year
FallCreditsSpringCredits
COMP SCI Theory (COMP SCI 577 recommended)4COMP SCI Applications3
Additional Math (STAT 324 recommended)3COMP SCI Electives3
Literature Breadth3Humanities Breadth3
Biological Science Breadth3Social Science Breadth3
Social Science Breadth3Elective3
 16 15
Fourth Year
FallCreditsSpringCredits
COMP SCI Software/Hardware3COMP SCI Software/Hardware3
COMP SCI Elective3Biological Science Breadth3
Physical Science Breadth3Elective7
Elective5 
 14 13
Total Credits 120

Advising

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 sciences major is posted to the Computer Sciences advising page

CAREERS

Demand for those with a computer sciences education is exceptionally strong. According to figures from the U.S. Bureau of Labor Statistics, the vast majority of growth in STEM (science, technology, engineering, and math) occupations through 2020 will occur within computing fields.

Computer sciences majors are encouraged to begin working on their career exploration and preparation soon after arriving on campus to explore different career paths, participate in co-ops or summer internships, prepare for the job search and/or graduate school applications, and network with professionals in the field.

Department of Computer Sciences: the department hosts one major career fair per year, in the fall, as well as other opportunities to connect with employers, such as technical talks and information sessions.

SucessWorks at the College of Letters & Science: SuccessWorks offers two major career fairs per year, assists with resume writing and interviewing skills, and offers individual career advising appointments for L&S students.

Engineering Career Services (ECS): ECS offers two major career fairs per year, assists with resume writing and interviewing skills, and hosts workshops on the job search. 

L&S career resources

SuccessWorks at the College of Letters & Science helps students leverage the academic skills learned in their major, certificates, and liberal arts degree; explore and try out different career paths; participate in internships; prepare for the job search and/or graduate school applications; and network with professionals in the field (alumni and employers). In short, SuccessWorks helps students in the College of Letters & Science discover themselves, find opportunities, and develop the skills they need for success after graduation.

SuccessWorks can also assist students in career advising, résumé and cover letter writing, networking opportunities, and interview skills, as well as course offerings for undergraduates to begin their career exploration early in their undergraduate career. 

Students should set up their profiles in Handshake to take care of everything they need to explore career events, manage their campus interviews, and apply to jobs and internships from 200,000+ employers around the country.

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

Visit Scholarships@UW-Madison to find UW–Madison scholarships and apply online.

Visit the scholarships page on the Department of Computer Sciences website for a compendium of opportunities available to students studying computer sciences.