Networking Software

Specialization Overview

The Networking Software specialization provides a unique opportunity to software engineers in the area of networking and distributed systems. Through a combination of basic-concept courses and hands-on experience, students learn the fundamentals as well as the design, development, and implementation of networking and the impact of networking on distributed systems.

The specialization focuses on network architecture, transport and application layer protocols, network programming and analysis, and includes advanced topics in network security, multimedia networking, networking for mobile computing, network management agents, distributed operating systems, and the impact of networking on distributed systems.

Required Specialization Core (6 units, take both of the following classes)

  •  Computer Network Design
  •  Network Programming and Applications

Specialization Choice (3 units, take one of the following classes)

  •  Enterprise Distributed Systems
  •  Enterprise Application Development
  •  Cloud Technologies
  •  Virtualization Technologies
  •  Software Engineering Processes
  •  Software Quality Assurance and Testing
  •  Machine Learning
  •  Deep Learning
  •  Network Security
  • Cybersecurity Clinics with HCI
  •  Software Security Technologies