Brown University School of Engineering

Computer Engineering

Sc.B. in Computer Engineering

Computer engineers specialize in applications which require a knowledge of both electrical engineering and computer science. They design and manufacture computer hardware (from chips to servers); they design and operate networks and communication systems; and have developed many of the 'smart' devices that continue to change the way we live and work. They are at the forefront of fields such as cybersecurity; machine intelligence; networking; and embedded systems.

The computer engineering undergraduate program combines the best of the School of Engineering with Brown's world-class Department of Computer Science. Students take courses in both departments, gaining proficiency in both software and hardware. Their inter-disciplinary foundation also prepares them to identify and implement innovative applications for hardware and software.

Nearly all students in the computer engineering program engage in collaborative research with faculty, through internships or independent study. These provide students access to state-of-the-art facilities in computer engineering and computer vision such as those of the Laboratory for Engineering Man/Machine Systems.

The concentration has the following structure:

  • The interdisciplinary core for computer engineering, taken during the first two years. The C.E. core is similar to other engineering programs, but is structured to include more courses in computer science, and a somewhat different emphasis in mathematics.
  • Specialized upper level courses;
  • A capstone design course;
  • Four approved humanities courses.

Further Information

Sample course plan (for requirements see the University Bulletin)

SEM. COURSE DESCRIPTION
I ENGN 0030 Introduction to Engineering
MATH 0190 AP Calculus (Physics/Engineering)
CSCI 0170 Computer Science: An Integrated Introduction
Elective †  
II ENGN 0040 Dynamics and Vibrations
MATH 0200* Intermediate Calculus (Physics/Engineering)
CSCI 0180 Computer Science: An Integrated Introduction
Elective †  
III ENGN 0510 Electricity and Magnetism
APMA 0330 Methods of Applied Mathematics I
CHEM 0330 or ENGN 0410 Equilibrium, Rate, and Structure or Materials Science (selected chemistry content)
Elective †  
IV ENGN 0520 Electrical Circuits and Signals
MATH 0520 Linear Algebra
Elective †  
Elective †  
V ENGN 1570 Linear System Analysis
ENGN 1630 Digital Electronics Systems Design
CSCI 0310 or CSCI 0330 Introduction to Computer Systems
Elective †  
VI Upper Level Course CE Specialty Course #1
Upper Level Course CE Specialty Course #2
Elective †  
Elective †  
VII APMA 1650 Statistical Inference I
Upper Level Course CE Specialty Course #3 or captsone
Upper Level Course CE Specialty Course #4
Elective †  
VIII Upper Level Course CE Specialty Course #5 or capstone
Upper Level Course CE Specialty Course #6
Elective †  
Elective †  
† A minimum of four electives must be in the humanities and social sciences.
* Students with a strong interest in Computer Engineering and advanced placement credit may elect to take MATH 0200 in the first semester and ENGN 0520 in the second semester.

Suggested upper level specialized courses
These are provided for guidance only. The requirements allow you to construct plans with other focus areas. For full requirements see the University Bulletin.

Suggested courses for a specialization in Computer Engineering
MATH 0520 Linear Algebra
or MATH 0540 Honors Linear Algebra
CSCI 0330 Introduction to Computer Systems
ENGN 1570 Linear System Analysis
ENGN 1630 Digital Electronics Systems Design
Analysis and Design of Electronic Circuits
Design of Computing Systems
ENGN 1650 Embedded Microprocessor Design
Select one of the following
Communication Systems
Design and Implementation of Very Large-Scale Integrated Systems
Embedded Microprocessor Design
Design and Fabrication of Semiconductor Devices
Advanced Computer Architecture
Low Power VLSI System Design
Reconfigurable Computing
Select two of the following
Introduction to Software Engineering
Introduction to Computer Graphics
Database Management Systems
Distributed Computer Systems
Artificial Intelligence
Building Intelligent Robots
Design and Analysis of Algorithms
Operating Systems
Computer Networks
Design and Implementation of Programming Languages
Multiprocessor Synchronization
csciStartup
 
Suggested courses for a specialization in Multimedia Signal Processing:
MATH 0520 Linear Algebra
or MATH 0540 Honors Linear Algebra
CSCI 0330 Introduction to Computer Systems
ENGN 1570 Linear System Analysis
ENGN 1630 Digital Electronics Systems Design
Analysis and Design of Electronic Circuits
Design of Computing Systems
Introduction to Computational Linear Algebra
ENGN 1650 Embedded Microprocessor Design
Select two or three of the following
Communication Systems
Image Understanding
Medical Image Analysis
Pattern Recognition and Machine Learning
Digital Signal Processing
Computer Vision
Select one or two of the following
Introduction to Software Engineering
Introduction to Computer Graphics
Computational Photography
Artificial Intelligence
Machine Learning
Computer Vision
Computational Linguistics
Design and Analysis of Algorithms