Computer Engineering program offers a broad range of supporting course material to prepare you for your chosen profession. In the hardware area, courses cover digital logic and digital systems engineering, computer organization and system architecture, microprocessors, and integrated circuit engineering. Software courses include programming languages, data structures and algorithms, operating systems, real-time software design, databases, compilers, software requirements analysis, formal methods in software engineering, and techniques for human-computer interaction. Computer communication network courses include material on reliable and secure information transfer protocols, switching and routing through multipath networks, and wireless networking.