Bachelor of Science in Computer Engineering

This is an archived copy of the 2016-2017 bulletin. To access the most recent version of the bulletin, please visit Any changes will appear on our errata page.

Undergraduate Programs in Engineering

Freshman applicants have completed four years of high school mathematics, one year of high school chemistry, and one year of high school physics. Students are also encouraged to include courses in mechanical drawing and computer programming.

Community college transfers should complete the sequence of mathematics, chemistry, physics, and engineering courses listed in freshman and sophomore years under the “sample sequence of courses,” if available at the community college.

The Bachelors of Science in Civil, Computer, Electrical, and Mechanical Engineering require  – 127, 128, 129, and 129 semester units, respectively. A minimum of 30 units must be earned in residence at SF State. Of these units 24 must be upper division courses and 12 of these upper division units must be in the major. Major requirements, including mathematics, chemistry, and physics prerequisites, comprise - 93 units for civil engineering, 94 for computer engineering, 95 for electrical engineering and 95 units for mechanical engineering. For civil engineering, 50 of the required units are lower division and 43 units are upper division. For mechanical engineering, 51 of the required units are lowers divisions and 44 units are upper division. For electrical engineering, 50 of the required units are lower division and 45 units are upper division. For computer engineering, 49 of the required units are lower division and 45 units are upper division. The remaining 33 units satisfy the balance of the university requirements including communication skills and general education in humanities and social sciences. Students are advised that, except for some general education (G.E.) courses, all courses which are to be counted toward completion of an engineering degree must be taken for a letter grade; the CR/NC option may not be used in this context.

Computer Engineer

Computer engineering is a multidisciplinary field with roots in electrical engineering and computer science that has grown to become a separate discipline in itself. The educational objectives of the computer engineering program are to produce graduates who:

  • Use the analysis and design skills that they have acquired in their computer engineering education to become productive, contributing engineers.
  • Demonstrate the ability to work in teams, communicate effectively, act in a professional and ethically responsible manner computer engineering, and continue to develop their professional skills through lifelong learning.

The first two years of the program are designed to build a strong background in mathematics and science to provide a basis for understanding the underlying analysis and modeling tools and physical principles that are common to all engineering. The last two years cover a rich set of hardware and software subjects to give students a broad background in computer engineering. This broad foundation enables students to adapt and extend their knowledge and skills more easily in the future. The curriculum also stresses problem solving skills and teamwork. Through electives, students can choose to develop further breadth or in-depth knowledge in one of three areas: embedded systems, network systems, or multimedia systems.

The number of units required for graduation and the G.E. requirements are described in the Undergraduate Education section of this Bulletin. For information for all engineering students, see Undergraduate Programs in Engineering above.

A number of required and elective lecture courses in the computer engineering program have corresponding laboratory courses that students are either required or strongly encouraged to take concurrently. These course pairs are:

ENGR 205
ENGR 206
Electric Circuits
and Circuits and Instrumentation Laboratory
ENGR 353
ENGR 301
and Microelectronics Laboratory
ENGR 356
ENGR 357
Digital Design
and Digital Design Laboratory
ENGR 447
ENGR 446
Control Systems
and Control Systems Laboratory

Students who drop or withdraw from any of these lecture courses must also drop or withdraw from the corresponding laboratory course, or they will be administratively dropped or withdrawn.

Students must complete 21 units of upper-division engineering units before registering for ENGR 696.

General Education Requirements Met in the Engineering Major (All Concentrations)

The requirements below are deemed “met in the major” upon completion of the courses listed (even though the courses and their prerequisites are not approved for GE). This is true whether or not the student completes the major.

Courses are scheduled during the day as well as in the late afternoon and evening. Other information and assistance in selecting courses can be obtained from a major advisor in the School of Engineering, or by calling 415-338-1174, by e-mail to, or by writing to:

School of Engineering
San Francisco State University
Science Building
1600 Holloway Avenue
San Francisco, CA 94132.

Computer Engineering (B.S.) — 92 units minimum

Required Courses (86-88 units)

CHEM 115General Chemistry I: Essential Concepts of Chemistry3-5
or CHEM 180 Chemistry for the Energy and the Environment
MATH 226Calculus I4
ENGR 100Introduction to Engineering1
ENGR 121Gateway to Computer Engineering1
ENGR 212Introduction to Unix and Linux for Engineers2
MATH 227Calculus II4
PHYS 220
PHYS 222
General Physics with Calculus I
and General Physics with Calculus I Laboratory
ENGR 213Introduction to C Programming for Engineers3
MATH 228Calculus III4
PHYS 230
PHYS 232
General Physics with Calculus II
and General Physics with Calculus II Laboratory
CSC 210Introduction to Computer Programming3
MATH 245Elementary Differential Equations and Linear Algebra3
CSC 220Data Structures3
CSC 230Discrete Mathematical Structures for Computer Science3
ENGR 205Electric Circuits3
ENGR 206Circuits and Instrumentation Laboratory1
ENGR 300Engineering Experimentation3
ENGR 301Microelectronics Laboratory1
ENGR 305Linear Systems Analysis3
ENGR 353Microelectronics3
ENGR 356Digital Design3
ENGR 357Digital Design Laboratory1
CSC 340Programming Methodology3
ENGR 451Digital Signal Processing4
ENGR 476Computer Communications Networks3
ENGR 478Design with Microprocessors4
CSC 413Software Development3
ENGR 378Digital Systems Design3
ENGR 456Computer Systems3
ENGR 696Engineering Design Project I1
ENGR 697GWEngineering Design Project II-GWAR2

Upper Division Electives (6 units)

Choice of upper division electives must demonstrate a clearly identifiable educational objective and have an advisor’s approval. A study plan of intended upper division electives must be approved by the student’s advisor and the program coordinator prior to registering for ENGR 696.

A total of 6 units from the following list of courses is required. Students with a GPA of at least 3.0 and the required prerequisites may take graduate courses (numbered 800 and above) with approval of their advisor or the program coordinator.

ENGR 306Electromechanical Systems3
ENGR 350Introduction to Engineering Electromagnetics3
ENGR 415Mechatronics3
ENGR 416Mechatronics Lab1
ENGR 442Operational Amplifier Systems Design3
ENGR 446Control Systems Laboratory1
ENGR 447Control Systems3
ENGR 449Communication Systems3
ENGR 453Digital Integrated Circuit Design4
ENGR 455Power Electronics4
ENGR 610Engineering Cost Analysis3
ENGR 844Embedded Systems3
ENGR 848Digital VLSI Design3
ENGR 849Advanced Analog IC Design3
ENGR 851Advanced Microprocessor Architectures3
ENGR 852Advanced Digital Design3
ENGR 853Advanced Topics in Computer Communication and Networks3
ENGR 854Wireless Data Communication Standards3
ENGR 856Nanoscale Circuits and Systems3
ENGR 868Advanced Control Systems3
ENGR 869Robotics3
CSC 415Operating System Principles3
CSC 510Analysis of Algorithms I3
CSC 620Natural Language Technologies3
CSC 630Computer Graphics Systems Design3
CSC 642Human-Computer Interaction3
CSC 645Computer Networks3
CSC 650Secure Networked Systems3
CSC 664Multimedia Systems3
CSC 665Artificial Intelligence3
CSC 667Internet Application Design and Development3
CSC 668Advanced Object Oriented Software Design and Development3

General Education Requirements

Requirement Course Level Units Area Designation
Oral Communication LD 3 A1
Written English Communication I LD 3 A2
Critical Thinking LD 3 A3
Written English Communication II LD 3 A4
Physical Science LD 3 B1
Life Science LD 3 B2
Lab Science LD 1 B3
Mathematics/Quantitative Reasoning LD 3 B4
Arts LD 3 C1
Arts or Humanities LD 3 C1 or C2
Humanities: Literature LD 3 C3
Social Sciences LD 3 D1
Social Sciences: US History LD 3 D2
Social Sciences: US & CA Governement LD 3 D3
Lifelong Learning and Self-Development (LLD) LD or UD 3 E
Physical and/or Life Science UD 3 UD-B
Arts and/or Humanities UD 3 UD-C
Social Sciences UD 3 UD-D
SF State Studies
Courses certified as meeting the SF State Studies requirements may be upper or lower division in General Education (GE), in a major or minor, or may be an elective.
American Ethnic and Racial Minorities (AERM) LD or UD 3
Environmental Sustainability (ES) LD or UD 3
Global Perspectives (GP) LD or UD 3
Social Justice (SJ) LD or UD 3

Note: LD = lower division; UD = upper division.

General Advising Information for Transfer Students

  1. Before transfer, complete as many lower division requirements or electives for this major as possible.
  2. The following courses are not required for admission but are required for graduation. Students are strongly encouraged to complete these units before transfer; doing so will provide more flexibility in course selection after transfer.
    • a course in U.S. History
    • a course in U.S. & California government
    • a 2nd-semester course in written English composition

For information about satisfying the requirements described in (1) and (2) above at a California Community College (CCC), go to Check any geographically accessible CCCs; sometimes options include more than one college. Use ASSIST to determine

  • Which courses at a CCC satisfy any lower division major requirements for this major
  • Which courses at a CCC satisfy CSU GE, US History, and US & CA Government

Remedial courses are not transferable and do not apply to the minimum 60 units/90 quarters required for admission.

Additional units for courses that are repeated do not apply to the minimum 60 units required for upper division transfer (for example, if course was not passed on first attempt, or was taken to earn a better grade).

Before leaving the last California community college of attendance, obtain a summary of completion of lower division General Education units (IGETC or CSU GE Breadth). This is often referred to as a GE certification worksheet. SF State does not require delivery of this certification to Admissions, but students should retain this document for verifying degree progress after transfer.

Credit for Advanced Placement, International Baccalaureate, or College-Level Examination Program courses: AP/IB/CLEP credit is not automatically transferred from the previous institution. Units are transferred only when an official score report is delivered to SF State. Credit is based on the academic year during which exams were taken. Refer to the University Bulletin in effect during the year of AP/IB/CLEP examination(s) for details regarding award of credit for AP/IB/CLEP.

Students pursuing majors in science, technology, engineering and mathematics (STEM) disciplines often defer 6-9 units of lower division general education in areas C and D until after transfer in order to focus on preparation courses for the major. (This advice does not apply to students pursuing associate degree completion before transfer.)

Transferring from institutions other than CCCs or CSUs

Review SF State's lower division General Education requirements. As described above, the four basic skills courses required for admission meet A1, A2, A3 and B4 in the SF State GE pattern. Courses that fulfill the remaining areas of SF State’s lower division GE pattern are available at most two-year and four-year colleges and universities.

Of the four required basic skills courses, a course in critical thinking (GE A3) may not be widely offered outside the CCC and CSU systems. Students should attempt to identify and take an appropriate course no later than the term of application to the CSU. Review more information about the A3 requirement here.

Identify and complete a 2nd-semester written English composition course before transfer. This is usually the next course after the typical “freshman comp” course, with a focus on writing, reading and critical analytical skills for academic purposes, and developing skills in composing, revising, and the use of rhetorical strategies.

Waiting until after transfer to take a single course at SF State that meets both US and CA/local government requirements may be an appropriate option, particularly if transferring from outside of California.

All students must meet the transfer eligibility requirements outlines below for admission. For more information, visit the Undergraduate Admissions section.

  • Complete 60 or more transferable semester units or 90 or more quarter units
  • Earn a college grade point average of 2.00 or better in all transferable courses. Non-local area residents may be held to a higher GPA standard.
  • Be in good standing at the last college or university attended
  • Complete 30 semester units (45 quarter units) of general education, including four basic skills courses:
    1. One course in oral communication (same as CSU GE area A1)
    2. One course in written composition (same as CSU GE area A2)
    3. One course in critical thinking (same as CSU GE area A3)
    4. One course in mathematics or quantitative reasoning, with intermediate algebra as a prerequisite (same as CSU GE area B4)
  • The four basic skills courses and minimum of 60 transferable semester units (90 quarter units) must be completed by the spring semester prior to fall admission, or by the fall semester prior to spring admission. Earn a "C" or better grade in each basic skills course.