• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site
Bachelor 2025/2026

Distributed System Design

Type: Elective course (Software Engineering)
When: 3 year, 3, 4 module
Open to: students of all HSE University campuses
Instructors: Petr Panfilov
Language: English
ECTS credits: 5
Contact hours: 60

Course Syllabus

Abstract

Distributed computing and application systems have become central concept of how computers are used, from web applications to e-commerce and to content distribution. Distributed systems help programmers aggregate the resources of many networked computers to construct highly available and scalable services. This course teaches the abstractions, design and implementation techniques that enable the building of efficient, scalable, fault-tolerant distributed systems. A course will cover abstractions and implementation techniques for the construction of distributed systems, including client server computing, the web, cloud computing, peer-to-peer systems, and distributed storage systems. Topics will include remote procedure call, preventing and finding errors in distributed programs, maintaining consistency of distributed state, fault tolerance, high availability, multithreading, etc. Case studies of distributed systems will be considered.