Bachelor of Science in Computer Engineering
Program Webpage: https://engineering.sfsu.edu/computer-engineering
Program Head: Dr. Xiaorong Zhang
Overview
Computer Engineering blends mathematics, science, and engineering to drive innovation in hardware, software, and systems integration—preparing engineers to design the technologies required for our digital world.
The Bachelor of Science in Computer Engineering (BSCompE) at SF State develops industry-ready professionals through a hands-on curriculum centered on designing computing systems, programming embedded solutions, and solving complex technical challenges. The four-year program progresses as follows:
-
Years 1–2: Foundation in mathematics, physics, computer science, and introductory engineering, including programming and circuits.
-
Year 3: Exploration of microprocessors, digital design, programming methodology, and electronics through interactive coursework and labs.
-
Year 4: Specialization in areas like embedded systems, artificial intelligence, computer architecture, digital system design, and computer networks, culminating in a multidisciplinary senior project, designing and implementing an engineering solution.
General Education courses complement technical studies, fostering ethical, community-minded graduates.The GE requirements are described in the Undergraduate Education section of this Bulletin.
Accredited by the Engineering Accreditation Commission of ABET (https://www.abet.org), the BSCompE meets rigorous standards, ensuring recognition by employers and graduate programs worldwide.
Program Educational Objectives
Graduates of the BSCompE program are expected to have, within a few years of graduation:
-
Established themselves as practicing professionals or engaged in graduate study in computer engineering or a related field.
-
Demonstrated an ability to be productive and responsible professionals.
Applicants
-
Freshmen: Admission requires four years of high school, one year of physics, and one year of chemistry. Computer programming is recommended to enhance problem-solving and technical readiness.
-
Transfers: Complete the mathematics, chemistry, physics, and engineering sequence in SF State BSCompE's First-Time Student Roadmap for freshman and sophomore years at a community college for a seamless transition.
Careers in Computer Engineering
SF State BSCompE graduates launch into dynamic careers, applying hands-on expertise to shape tomorrow’s technology. Across the Bay Area and beyond, our alumni design, test, and optimize computer hardware, software, and firmware, develop embedded systems solutions, and create AI applications to power technologies in fields like IoT, robotics, healthcare, and automotive.
High-tech firms, consultancies, and startups seek our graduates’ practical skills—honed through hands-on lab work projects like the senior design capstone—while others pursue master’s or Ph.D. degrees or interdisciplinary fields.
Program Learning Outcomes
Upon completion of the Bachelor of Science in Computer Engineering a student will be able to demonstrate:
- an ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics.
- an ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors.
- an ability to communicate effectively with a range of audiences.
- an ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts.
- an ability to function effectively on a team whose members together provide leadership, create a collaborative environment, establish goals, plan tasks, and meet objectives.
- an ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions.
- an ability to acquire and apply new knowledge as needed, using appropriate learning strategies.
Computer Engineering (B.S.) — 93 units minimum
All courses for the major must be completed with a letter grade.
General Education Requirements Met in the Major
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.
- Area 1B (Critical Thinking) is satisfied upon completion of ENGR 205 and either ENGR 201 or ENGR 213.
- Area 5UD (Upper-Division Science) is satisfied upon completion of ENGR 478.
Math and Science Lower-Division Courses (26-27 units)
Code | Title | Units |
---|---|---|
Select One: | 3-4 | |
General Chemistry I | ||
Chemistry for Energy and the Environment | ||
MATH 226 | Calculus I | 4 |
MATH 227 | Calculus II | 4 |
MATH 228 | Calculus III | 4 |
MATH 245 | Elementary Differential Equations and Linear Algebra | 3 |
PHYS 220 & PHYS 222 | General Physics with Calculus I and General Physics with Calculus I Laboratory | 4 |
PHYS 230 & PHYS 232 | General Physics with Calculus II and General Physics with Calculus II Laboratory | 4 |
Lower-Division Computer Engineering Courses (19 units)
Code | Title | Units |
---|---|---|
ENGR 100 | Introduction to Engineering | 3 |
ENGR 205 | Electric Circuits | 3 |
ENGR 206 | Circuits and Instrumentation Laboratory | 1 |
ENGR 212 | Introduction to Unix and Linux for Engineers | 2 |
ENGR 213 | Introduction to C Programming for Engineers | 3 |
ENGR 214 | C Programming Laboratory | 1 |
ENGR 221 | Data Structures and Algorithms in Python | 4 |
ENGR 281 | Probability and Statistics for Engineers | 2 |
Upper-Division Computer Engineering Courses (42 units)
Code | Title | Units |
---|---|---|
ENGR 305 | Linear Systems Analysis | 3 |
ENGR 340 | Programming Methodology for Engineers | 4 |
ENGR 354 | Electronics for Computer Engineers | 4 |
ENGR 356 | Digital Design | 3 |
ENGR 357 | Digital Design Laboratory | 1 |
ENGR 378 | Digital Systems Design | 3 |
ENGR 413 | Artificial Intelligence in Engineering | 3 |
ENGR 451 | Digital Signal Processing | 4 |
ENGR 456 | Computer Systems | 3 |
ENGR 476 | Computer Communications Networks | 3 |
ENGR 478 | Design with Microprocessors | 4 |
ENGR 498 | Advanced Design with Microcontrollers | 4 |
ENGR 696 | Engineering Design Project I | 1 |
ENGR 697GW | Engineering Design Project II - GWAR | 2 |
Upper-Division Electives (6 units minimum)
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 minimum of 6 units from the following list of courses is required. Students with a GPA of 3.0 or better and the required prerequisites may take graduate courses (numbered 800 and above) with the approval of their advisor or the program coordinator.
Code | Title | Units |
---|---|---|
CSC 415 | Operating System Principles | 3 |
CSC 510 | Analysis of Algorithms I | 3 |
CSC 645 | Computer Networks | 3 |
CSC 648 | Software Engineering | 3 |
CSC 652 | Introduction to Security and Data Privacy | 3 |
CSC 667 | Internet Application Design and Development | 3 |
CSC 668 | Advanced Object Oriented Software Design and Development | 3 |
ENGR 415 | Mechatronics | 4 |
ENGR 442 | Operational Amplifier Systems Design | 3 |
ENGR 446 | Control Systems Laboratory | 1 |
ENGR 447 | Control Systems | 3 |
ENGR 449 | Communication Systems | 3 |
ENGR 453 | Digital Integrated Circuit Design | 4 |
ENGR 492 | Hardware for Machine Learning | 3 |
ENGR 844 | Embedded Systems | 3 |
ENGR 845 | Neural-Machine Interfaces: Design and Applications | 3 |
ENGR 848 | Digital VLSI Design | 3 |
ENGR 849 | Advanced Analog IC Design | 3 |
ENGR 850 | Digital Design Verification | 3 |
ENGR 851 | Advanced Microprocessor Architectures | 3 |
ENGR 852 | Advanced Digital Design | 3 |
ENGR 853 | Advanced Topics in Computer Communication and Networks | 3 |
ENGR 856 | Nanoscale Circuits and Systems | 3 |
ENGR 858 | Hardware Security and Trust | 3 |
ENGR 859 | On-Device Machine Learning | 3 |
ENGR 868 | Advanced Control Systems | 3 |
ENGR 869 | Robotics | 3 |
ENGR 870 | Robot Control | 3 |
ENGR 890 | Static Timing Analysis for Nanometer Designs | 3 |
General Education Requirements
Requirement | Course Level | Units | Area Designation |
---|---|---|---|
English Composition | LD | 3 | 1A |
Critical Thinking | LD | 3 | 1B |
Oral Communication | LD | 3 | 1C |
Mathematical Concepts and Quantitative Reasoning | LD | 3 | 2 |
Arts | LD | 3 | 3A |
Humanities | LD | 3 | 3B |
Social and Behavioral Sciences | LD | 6 | 4 |
Physical Science | LD | 3 | 5A |
Biological Science | LD | 3 | 5B |
Laboratory | LD | 1 | 5C |
Ethnic Studies | LD or UD | 3 | 6 |
Science or Math/Quantitative Reasoning | UD | 3 | 5UD or 2UD |
Arts or Humanities | UD | 3 | 3UD |
Social and Behavioral Sciences | UD | 3 | 4UD |
SF State Studies | |||
Courses certified as meeting the SF State Studies requirements may be upper or lower division in General Education (GE), a major or minor, or an elective. | |||
American Ethnic and Racial Minorities | LD or UD | 3 | AERM |
Environmental Sustainability and Climate Action | LD or UD | 3 | ES |
Global Perspectives | LD or UD | 3 | GP |
Social Justice | LD or UD | 3 | SJ |
Note: LD = Lower-Division; UD = Upper-Division.
First-Time Student Roadmap (4 Year)
The roadmaps presented in this Bulletin are intended as suggested plans of study and do not replace meeting with an advisor. For a more personalized roadmap, please use the Degree Planner tool found in your Student Center.
First-Time Student QR Pathway I/II Roadmap
First-Time Student QR Pathway I/II 5 Year Roadmap
First-Time Student QR Pathway III/IV Roadmap
SF State Scholars
The San Francisco State Scholars program provides undergraduate students with an accelerated pathway to a graduate degree. Students in this program pursue a bachelor’s and master’s degree simultaneously. This program allows students to earn graduate credit while in their junior and/or senior year, reducing the number of semesters required for completion of a master’s degree.
Computer Engineering BS + Electrical and Computer Engineering MS SF State Scholars Roadmap
General Advising Information for Transfer Students
- Before transfer, complete as many lower-division requirements or electives for this major as possible.
- 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
For information about satisfying the requirements described in (1) and (2) above at a California Community College (CCC), please visit http://www.assist.org. 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 requirements.
Remedial courses are not transferable and do not apply to the minimum 60 semester units/90 quarter units 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 a course was not passed on the 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 the 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 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. Note that, as described below, the four basic skills courses required for admission meet GE Areas 1A/A2, 1B/A3, 1C/A1, and 2/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 (1B/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. To review more information about the 1B/A3 requirement, please visit bulletin.sfsu.edu/undergraduate-education/general-education/lower-division/#AAEL.
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.