Skip to main content Skip to secondary navigation

Email forwarding for @cs.stanford.edu is changing. Updates and details here.
CS Commencement Ceremony June 16, 2024. Learn More.

 

BS | Engineering Fundamental Requirements

Main content start

Overview

Transfer credits and AP credits in Engineering Fundamentals must be approved by the School of Engineering (SoE) Dean's Office. A 2.0 minimum Grade Point Average (GPA) for all courses in ENGR Fundamentals and CS Core, Depth, and Senior Project (combined) is required. 

Programming Abstractions (CS106B)

CS106B will acquaint you with the C++ programming language and introduce advanced programming techniques such as recursion, algorithm analysis, data abstraction, explore classic data structures and algorithms, and give you practice applying these tools to solving complex problems.

Introductory Electronics (ENGR40)

ENGR40 is an introductory electronics class taught by the EE department. The class has weekly problem sets, labs, a midterm, and a final.

Engineering Fundamentals Elective

Important Note: The Engineering Fundamentals Elective was removed beginning with the 2021-2022 academic year. The bullet points below apply to the program sheets published prior to 2021-2022.

  • The School of Engineering website details the Engineering Fundamental electives that can satisfy this requirement. Additionally, the Undergraduate engineering handbook consists of an updated list of classes that's applicable to the Engineering Fundamentals elective. Effective as of the 2017-2018 program sheets, you can now count an additional CS Depth course (track or general elective) in place of the second Engineering Fundamentals course.
  • If you take ENGR40A instead of ENGR40M, you still have to fulfill the required number of units within the Engineering Fundamentals section. This can be done either by taking 5 unit Engineering Fundamentals elective or making up the rest of the units in your Depth courses. For example, if you take CS106B, ENGR40A, and a 3 unit Engineering Fundamentals, you need another additional 2 units, which you can make up by making sure you have 2 additional units in your Depth courses on the back of the program sheet.