Undergraduate FAQs

Prospective Student

Go here for more info. 

If you have never had a computer programming class, we offer CMPSC 8, which will prepare you for the Problem Solving with Computers II which is called CS 16.

To receive a Computer Science Engineering degree from UCSB, students must satisfy three sets of requirements: major, college and university. As a first point of reference for curriculum questions, go to the CS Curriculum webpage. For additional questions, contact the CS Undergraduate Advisor Benji Dunson.  Please note: upper division major electives must be approved by a faculty member.

The Upper Division Elective form http://www.cs.ucsb.edu/docs/major-elective-approval-form-and-list-electives MUST be completed before beginning upper division work. Each student is required to take 20 units of upper division Departmental Electives http://cs.ucsb.edu/content/upper-division-electives. Each student must bring this form to a Computer Science faculty member, discuss upper division electives with them, have the professor sign the form, and then turn the form in to the CS office. Hard copies of the forms can be obtained from Benji Dunson (CS Undergraduate Advisor) in HFH 2104.

For Freshman admissions, refer to Undergraduate Admissions http://admissions.sa.ucsb.edu/

Changing Your Major to the Computer Science BS (UCSB students only)

Students applying for major status in the BS program who have completed more than 105 units will NOT be considered for a change of major/change of college unless they can demonstrate that they will be able to complete all of the degree requirements for the proposed program without exceeding 200 units or no more than 5 total years of post-secondary study, including time enrolled at other institutions.

Students may petition once to enter the computer science major once they complete the following milestones (and are able to demonstrate that they will be able to complete the computer science degree within this total unit limit and time limit to graduation described above). These milestones, however, are the minimum requirements for consideration -- achieving them does not guarantee approval of the change-of-major petition or admission to the major. Please Note: Given the high demand for this major, admission will be granted on a competitive basis, and only if there are sufficient pedagogical resources available (instructors, TAs, staff support, classrooms/labs/seats).

Completion of the courses CS16, 24, and 40, with a grade of B or better (first-takes only).
Completion of the courses Math 3A, 3B, 4A, and 4B, with a grade of C or better.
A cumulative GPA of 2.0 or higher.

Petitions are due by the start of Pass 1 of registration for the quarter that follows the one in which final milestones will be completed; we will make our best effort to respond to such by the start of Pass 3. Any petitions that are denied will be automatically considered and evaluated a second time in the next quarter (unless the student withdraws his/her petition). Petitions denied a second time will not be reconsidered.

No. None of the majors within the College of Engineering offer a minor degree.

Yes, students can use work-study to work with individual professors on research.  Students can also do so without work-study (professors offer unpaid and an paid research experiences for undergraduates depending on their area of research and available positions).  Students find out about available positions by talking with faculty.

Four years if you start as a computer science major. Five years for a BS/MS (more on this below).  If you switch majors it takes longer.  We don't provide a guarantee because every individual is different, but our curriculum and available offerings are set up to make this happen:  see
(click on the BS Requirements PDF)

Majority: High tech industry: team based software development and QA/testing
1) Non-high-tech: applying CS skill sets and technologies to other disciplines (medical, bio, econ, …)
2) Start their own companies (become entrepreneurs) or join startups
UCSB offers a TMP program and classes that you can take to learn how to do so:
3) Pursue higher degrees (MS's and PhDs)
We offer a 5 year BS/MS in our department and college: http://engineering.ucsb.edu/current_undergraduates/pdf/coe_five_year_bsms_brochure.pdf
We can also help you set yourself up to pursue a PhD in computer science.

Our students are highly sought after and find their internships independently (through online resources and companies that advertise in our departments),  through the UCSB Job Fair each quarter (http://career.sa.ucsb.edu/career-fairs), and through Counseling and Career Services (http://career.sa.ucsb.edu/).  Most of our students have their internships for summer lined up by the end of the previous year (December).  Some professors also have contacts they can introduce you to if you'd like to work in an area related to their research for an internship.

Our last survey showed that approximately 15% of respondents went on to graduate school.

We are different in that our faculty are very involved in undergraduate advising, providing undergraduates with research opportunities, and our curriculum is always evolving to meet the changes in the field.  Our faculty are on the cutting edge of computer science research (big data, cloud, mobile, bioinformatics, and much more) and also teach the classes you take.  Finally, we also (perhaps given the amazing environment in which we get to live/work) are also laid back, love our research and jobs, and are generally approachable and easy to talk with.   

Here are some more details: http://www.cs.ucsb.edu/about/ucsb
Our university also has many other opportunities for exploring the world (through courses and study abroad: https://eap.ucsb.edu/).

Current Student

Please see "What is an Upper Division Elective form?"