Undergraduate Degree Programs
- B.A. Computer Science
- B.S. Computer Science
- B.S. Computer Engineering
- B.S. Computer Science with a Specialization in Bioinformatics
CSE's undergraduate programs help build a strong foundation for our programmers with a great understanding of the fundamentals. We also offer a great social networking environment for our students. As you know, CSE is embedded in almost every aspect of daily life, so we feel it is necessary to teach important and relevant material in every class we teach. We believe it's important to teach students technology that may solve society's problems in fields such as the environment, medicine, robotics, social services, etc.
Per UC San Diego's Career Services survey, common starting salaries for CSE majors from UC San Diego are $68,000 - $83,000 plus benefits. Computer science and computer engineering jobs are some of the fastest growing, recession-proof professions in the country.
Join the CSE Department and you to can reap all of these rewards!
First step-first class, learning to program
Learning the basics is important in computer science and computer engineering. We offer several introductory course tracks for CSE students. The lower division courses prepare our students to become knowledgeable programmers.
We offer an advisory exam to help students figure out which course to start with first quarter at UC San Diego. The exam covers material students complete in CSE 8A/8AL. If a student passes this exam, they are ready to take CSE 11. Take the "CSE Advisory Exam" to find out where to start.
- CSE 3 - Fluency in Information Technology, for students wanting to learn about computers and information technology.
- CSE 5A - Introduction to Programming (C language, some Java, and some HTML). This course covers the same material found in CSE 11, but only in a different language.
- CSE 8A - Introduction to Computer Science: Java, CSE 8AL - Introduction to Computer Science: Java Lab, and CSE 8B - Introduction to Computer Science: Java. Students that feel confident in understanding basic knowledge in computers should start with this set of course.
- CSE 11 - Introduction to Computer Science and Object-Oriented Programming. Many of our new students already have programming experience in a compiled language and will start with CSE 11.
Lower division programming classes
In their first two years of study at UC San Diego, CSE students are prepared for advanced studies in programming. As part of this preparation, students will complete the following courses whether they are following the computer science curriculum or the computer engineering curriculum.
- CSE 12 - Basic Data Structures and Object-Oriented Design
- CSE 15L - Software Tools and Techniques Laboratory
- CSE 20 - Introduction to Discrete Mathematics
- CSE 21 - Mathematics, Algorithms, and Systems Analysis
- CSE 30 - Computer Organization and System Programming
Upper division programming classes, advanced studies
In their junior and senior years, CSE students will study advanced courses in theory, techniques of algorithms, hardware design, and software development in the upper division courses. The core set of upper division courses enhance students' breadth of knowledge and also provides a deep understanding in these areas.
- CSE 100 - Advanced Data Structures
- CSE 101 - Design and Analysis of Algorithms
- CSE 105 - Introduction to Theory of Computation
- CSE 110 - Software Engineering
- CSE 120 - Principles of Computer Operating Systems
- CSE 130 - Programming Languages: Principles and Paradigms
- CSE 131 - Compiler Construction
- CSE 140 - Componet & Design Techniques of Digital Systems
- CSE 140L - Digital Systems Laboratory
- CSE 141 - Introduction to Computer Architecture
- and CSE 141L - Project in Computer Architecture
"Computer Science is no more about computers than astronomy is about telescopes."
– Edsger Dijkstra

