Electrical Engineering 16A — Designing Information Devices and Systems I (4 Units)

Course Overview


The purpose of EECS 16A is to provide an introduction to electrical engineering through a broad overview of the fundamentals of EE. The class provides a toolbox of skills used to analyze and work with circuits, along with a higher level understanding of circuit design. Students can expect to leave the course with a very solid foundation in circuits and circuit analysis fundamentals, as well as considerable experience and understanding of linear algebra.


  • Math 1A
  • Math 1B (coreq)

Topics Covered

  • Basics of Linear Algebra
    • Vectors and Systems of Equations
    • Linear Dependence
    • Rank
    • Span
    • Inverses
    • Vector Spaces
    • Basis
    • Null Spaces
    • Inner products
    • Orthogonality
  • Imaging/Tomography
  • Circuit Design
  • Capacitive Touchscreens
  • Operational Amplifiers (Op-Amps)
  • Negative Feedback
  • Capacitors
  • Kirchoff’s Laws
  • Sources, Resistors
  • Charge Sharing
  • PageRank
  • Correlation
  • Least Squares
  • Trilateration
  • Orthogonal Matching Pursuit (OMP)

    No Longer Covered

  • QR Factorization
  • Diagonalization


Course Work

  • One homework problem set every week
  • One lab assignment every week, with occasional week off
  • Two midterms
  • One final

Time Commitment

There are 3 hours of lecture, 2 hours of discussion, and 3 hours of lab per week. Outside of class time varies quite a bit, depending on the amount of experience with linear algebra. With no linear algebra, expect to spend ~6 hours on problem sets. With linear algebra experience, this amount will vary, from 2 hours on more linear-algebra focused problem sets to 6 hours on circuits problem sets.

Choosing the Course

When to take

This class should be taken first semester freshman year, or after pre-requisite courses have been completed.

What’s next?

The next class is EECS 16B: Designing Information Devices and Systems II

Usefulness for Research and Internships

EECS 16A covers a broad array of introductory topics. Along with EECS 16B, the tools provided by the series can be useful in research.

EECS 16A provides the tools needed to take EECS 16B, which helps with getting an EE internship.

Additional Comments/Tips

As the course is still relatively new, the course material has been changing slightly between iterations. While it hasn’t reached a steady state, it is worth taking EECS 16B the semester directly after you take EECS 16A, as each semester, EECS 16B will take into account what was or wasn’t talked about the semester before in EECS 16A. So having a gap between EECS 16A and EECS 16B may result in you being a bit out of sync with the material taught in EECS 16B.

Websites of Past Offerings:

Last edited: Summer 2020