The PDCS programme is unique in the Netherlands and one of the few of its kind in the world. It involves the design, implementation, testing and analysis of complex systems, emphasising experimental computer science rather than theory. The curriculum includes several software lab courses, which train you to carry out scientific experiments using methodologies to solve challenging user cases and research problems.
You’ll study the hardware and software architectures that can scale to up to geographically distributed systems, serving billions of applications in parallel or millions of concurrent users. You’ll understand how to address challenges of scalability, performance, reliability, security and privacy. And you’ll learn how to use experimental and empirical approaches to address the enormous complexity of real-world systems and their applications, and how they interact with actual users.
What’s more, you’ll design, implement and evaluate the properties of complex systems. To do this, you’ll work in small teams to learn valuable collaborative research skills. All courses revolve around our research areas:
High Performance Distributed Computing – programming environments for clusters, clouds, heterogeneous systems, many-core, networked systems, sensor networks, smartphones and internet of things, applied to deep learning, astronomy, forensics, e-health, climate, multimedia, bioinformatics, smart cities, etc.
Massivising Computer Systems – making (distributed) computer systems scalable, reliable and performant, yet forming efficient, engineered ecosystems available to massive numbers of end-users. This approach improves large-scale infrastructure, leverages modern hardware such as programmable accelerators and RDMA networking, and uses emerging storage technology – touching datacentres, cloud computing and big data. This affects numerous popular applications in the digital economy, such as e-Science, business-critical applications, online gaming, etc.
Systems for Artificial Intelligence – systems to apply AI algorithms in big-data environments, especially applying deep learning and/or logical reasoning techniques to large volumes of unstructured data (natural language processing) or semi-structured data (knowledge graphs/social networks).
Systems and Network Security – system-level security and reliability, including software hardening, exploitation, binary and malware analysis, software testing, security metrics, side channels, hardware fault attacks and reverse engineering.
The start date of this programme is September 1st.