Updates on the campus response to coronavirus (COVID-19)

Distributed System & Software Design Thread

Software directs the countless computing devices that permeate our lives, instructing what to compute, how to assist, and coordinating the many interconnected sources of information we rely upon. This thread explores how software systems are created to do this—from controlling small scale embedded microarchitectures to large-scale data centers, and from tracking personal fitness to coordinating distributed technology in smart cities. For instance, how do we orchestrate a massive array of computers to accelerate the search for new pharmaceuticals or immunotherapies? How can we share knowledge with each other and collaborate through cloud services while maintaining consistency, accessibility, and security? How does a network of smart cameras seamlessly track an Olympic ice skater or skier during a fast-paced event? How do we coordinate geographically dispersed, interconnected devices in smart cities, farms, and forests, that balance computing locally ("on the edge") with leveraging shared information globally ("in the cloud") to achieve performance and energy efficiency? Engineers in these areas work closely with experts in computing hardware and networks to both harness the power of emerging technologies and to drive new hardware advances to meet computational needs.

Sample of related career paths:

  • Software Engineering (Microsoft, IBM, Apple, Facebook, NCR, Delta Airlines, Adobe, nearly every industry)
  • Cloud computing (Google, Amazon AWS, Microsoft Azure, Dropbox, IBM, etc.)
  • Edge computing (Cloudflare, ARM, Ericsson, Mutable, Oracle, HP, IBM, Microsoft, Dell, Cisco, etc.)
  • IoT, Smart homes, cities, farms, forests (Honeywell, Cisco, Siemens, Hitachi, Ericsson, Toshiba, Oracle, CropX, Arable, and many more)
  • Self-driving cars, including fleet navigation (Intel, Waymo, Uber, Tesla, and most automotive companies)
  • Climate modeling (NASA, Lawrence Livermore National Laboratory, etc)
  • Aerospace (Lockheed Martin, SpaceX, Boeing, JPL, NASA, etc.)
  • Virtual and augmented reality (Oculus, Samsung, Magic Leap, WorldViz, Google, Unity, Nvidia, etc.)
  • Concurrent systems, including accelerating CGI, AI, gaming systems (Nvidia, AMD, Intel, Asus, etc)
  • Assistive technologies (Orcam, Panasonic, Honda, Tobii Technology, etc.)
  • Sport performance analysis (ESPN, NBC/CBS/Fox Sports, etc.)



Distributed System & Software Design


CS 3251 - Computer Networking

Pick 1 of Advanced Software

CS 4220 - Programming Embedded Systems
ECE 4122 - Adv Prog Techniques
ECE 4795 - GPU Programming for Video Games

Pick 2 of Edge, Cloud, and Mobile Apps

ECE 4150 - Cloud Computing
ECE 4180 - Embedded Systems Design
CS 4605 - Mobile and Ubiquitous Computing
CS 3651 - Building Intelligent Appliances

Last revised July 26, 2021