Units: 12
This course focuses on the systems architecture aspects of building scalable systems from lots of embedded devices that connect to the cloud. We will address back-end server architectures for such systems, protocols and abstraction techniques that allow systems to be made of heterogeneous devices, authentication & security, fault tolerance & resilience to failure, semi-connectedness, performance issues, and distributed programming & sync. As part of the course, we will build some scalable systems, with either real or artificial load.
Prerequisites: 96-810 or consent of the instructor