Master in Software Engineering of Distributed Systems

General

Program Description

Emerging computer networks and communication technology provide a new technological foundation for designing software systems. The systems become distributed, reconfigurable and adaptive, and their components employ a high degree of autonomy. This is an exciting and rapidly evolving field in which there is a continuous demand for qualified software engineers on the world labor market.

Software Engineering of Distributed Systems at KTH

The set of devices in which distributed software applications may operate ranges from cloud servers to smartphones. New technological developments create considerable demand from industry and for engineers who are able to design software systems utilizing these developments. This master’s program is intended to be an educational response to such industrial demands. It provides students with state-of-the-art knowledge of the field and develops their practical skills in order to meet current industrial requirements, as well as enhancing their ability to adapt to the new developments of tomorrow’s technology.

The program is course-based. 60 ECTS credits must be obtained from the set of compulsory courses (including the degree project) and 60 ECTS credits can be obtained from the set of elective courses. The program offers two tracks: Software track and Data Science track. The software track emphasizes software development courses while the Data Science track puts focus on data analysis courses. Among the set of elective courses for these specializations, four courses (30 ECTS credits) for each of these tracks must be elected from the lists of corresponding elective courses for the tracks. The final term is dedicated to the degree project with one set of thesis topics provided by faculty. Many students choose to conduct their projects in collaboration with industry, either in Sweden or abroad, and others are interested in pursuing their projects in a university abroad. The choice of degree project depends on the students’ plans for future industrial or research work.

This is a two-year program (120 ECTS credits) given in English. Graduates are awarded the degree of Master of Science. The program is given mainly at the KTH Kista campus in Stockholm by the School of Electrical Engineering and Computer Science (at KTH).

Career

Since the program is oriented to educate software engineers with a comprehensive knowledge of recent advanced methods and technologies in distributed software systems, opportunities for graduates to find a job are extensive. The program qualifications allow students to work in a multitude of companies developing or maintaining software, and this is a huge market. Alumni can be found working in companies such as Ericsson, Spotify, Google, Nasdaq, Netlight, Scania group, and SEB. Many students have been offered permanent positions either in Sweden or abroad even before they graduate. Feedback from former students shows that they very much appreciate the knowledge of modern technologies they learned from the program, and this knowledge enables them to be very competitive in the labor market. Likewise, there are many examples of graduates becoming key employees in their companies by promoting these modern technologies.

Students

Find out what students from the program think about their time at KTH.

Helal Uddin: "I would say KTH has a very high standard of education. There are so many options to learn details throughout the lectures, exercises, labs, projects, and exams."

Sustainable development

Graduates from KTH have the knowledge and tools for moving society in a more sustainable direction, as sustainable development is an integral part of all programs. The three key sustainable development goals addressed by the master's program in Software Engineering of Distributed Systems are:

  • Quality Education: The program provides a stimulating international environment in which students from countries all around the world collaborate on common subjects; the approach we take in teaching the programme creates a strong basis for supporting life-long learning
  • Industry, Innovation, and Infrastructure: In the programme we underline innovation factors as an important component of progress in the software industry; building reliable infrastructure requires expertise in software technology that we teach as a vehicle for its development
  • Responsible Consumption and Production: The program underlines digitalization as an approach to responsible consumption that includes reduced resource consumption (paper, for example) and responsible energy consumption.

Courses

The two-year master's program in Software Engineering of Distributed Systems consists of three terms of courses and one final term dedicated to the master's degree project. Each term consists of approximately 30 ECTS credits. Depending on which track you choose, you will study different courses. The courses presented on this page apply to studies starting in autumn 2020.

Year 1

Mandatory courses for all tracks

  • Distributed Systems, Basic Course (ID2201) 7.5 credits
  • Modern Methods in Software Engineering (ID2207) 7.5 credits
  • Distributed Artificial Intelligence and Intelligent Agents (ID2209) 7.5 credits

Optional courses for all tracks

  • Programming of Interactive Systems (ID2010) 7.5 credits
  • Ubiquitous Computing (ID2012) 7.5 credits
  • Constraint Programming (ID2204) 7.5 credits
  • Distributed Computing, Peer-to-Peer and GRIDS (ID2210) 7.5 credits
  • Internet Security and Privacy (IK2206) 7.5 credits

Data Science track

Mandatory courses

  • Distributed Systems, Basic Course (ID2201) 7.5 credits
  • Modern Methods in Software Engineering (ID2207) 7.5 credits
  • Distributed Artificial Intelligence and Intelligent Agents (ID2209) 7.5 credits

Conditionally elective courses

  • Distributed Systems, Advanced Course (ID2203) 7.5 credits

Optional courses

  • Programming of Interactive Systems (ID2010) 7.5 credits
  • Ubiquitous Computing (ID2012) 7.5 credits
  • Constraint Programming (ID2204) 7.5 credits
  • Distributed Computing, Peer-to-Peer and GRIDS (ID2210) 7.5 credits
  • Internet Security and Privacy (IK2206) 7.5 credits

Software track

Mandatory courses

  • Distributed Systems, Basic Course (ID2201) 7.5 credits
  • Modern Methods in Software Engineering (ID2207) 7.5 credits
  • Distributed Artificial Intelligence and Intelligent Agents (ID2209) 7.5 credits

Conditionally elective courses

  • Network Programming (ID1212) 7.5 credits
  • Distributed Systems, Advanced Course (ID2203) 7.5 credits
  • Constraint Programming (ID2204) 7.5 credits
  • Distributed Computing, Peer-to-Peer and GRIDS (ID2210) 7.5 credits

Optional courses

  • Programming of Interactive Systems (ID2010) 7.5 credits
  • Ubiquitous Computing (ID2012) 7.5 credits
  • Internet Security and Privacy (IK2206) 7.5 credits

Year 2

Mandatory courses for all tracks

  • Research Methodology and Scientific Writing (II2202) 7.5 credits
  • Degree Project in Computer Science and Engineering, Second Cycle (II246X) 30.0 credits

Optional courses for all tracks

  • Data-Intensive Computing (ID2221) 7.5 credits
  • Data Mining (ID2222) 7.5 credits
  • Scalable Machine Learning and Deep Learning (ID2223) 7.5 credits
  • Product Realization Processes I (II2300) 7.5 credits
  • Internet Security and Privacy (IK2206) 7.5 credits

Data Science track

Mandatory courses

  • Research Methodology and Scientific Writing (II2202) 7.5 credits
  • Degree Project in Computer Science and Engineering, Second Cycle (II246X) 30.0 credits

Conditionally elective courses

  • Data-Intensive Computing (ID2221) 7.5 credits
  • Data Mining (ID2222) 7.5 credits
  • Scalable Machine Learning and Deep Learning (ID2223) 7.5 credits

Optional courses

  • Product Realization Processes I (II2300) 7.5 credits
  • Internet Security and Privacy (IK2206) 7.5 credits

Software track

Mandatory courses

  • Research Methodology and Scientific Writing (II2202) 7.5 credits
  • Degree Project in Computer Science and Engineering, Second Cycle (II246X) 30.0 credits

Conditionally elective courses

  • Logic Programming (ID2213) 7.5 credits

Optional courses

  • Data-Intensive Computing (ID2221) 7.5 credits
  • Data Mining (ID2222) 7.5 credits
  • Scalable Machine Learning and Deep Learning (ID2223) 7.5 credits
  • Product Realization Processes I (II2300) 7.5 credits
  • Internet Security and Privacy (IK2206) 7.5 credits

Admission requirements

To be eligible for the program, you must have been awarded a bachelor's degree, be proficient in English and meet the program-specific requirements.

Bachelor's degree

A bachelor's degree, equivalent to a Swedish bachelor's degree, or equivalent academic qualifications from an internationally recognized university, is required. Students who are following longer technical programs, and have completed courses equivalent to a bachelor's degree, will be considered on a case-by-case basis.

English proficiency

English language proficiency equivalent to (the Swedish upper secondary school) English course B/6 is required. The requirement can be satisfied through a result equal to, or higher than, those stated in the following internationally recognized English tests:

  • TOEFL Paper-based: Score of 4.5 (scale 1-6) in written test, a total score of 575.
    TOEFL ITP is not accepted.
  • TOEFL iBT internet-based: Score of 20 (scale 0-30) in written test, a total score of 90
  • IELTS Academic: A minimum overall mark of 6.5, with no section lower than 5.5
  • Cambridge ESOL: Cambridge English: Advanced (CAE) Certificate in Advanced English or Cambridge English: Proficiency (CPE) (Certificate of Proficiency in English)
  • Michigan English Language Assessment Battery (MELAB): Minimum score of 90
  • The University of Michigan, ECPE (Examination for the Certificate of Proficiency in English)
  • Pearson PTE Academic: Score of 62 (writing 61)

Specific requirements for the master's program in Software Engineering of Distributed Systems

A bachelor's degree in computer science or equivalent degree, corresponding to at least 180 ECTS credits, including courses in mathematics, information technology or computer science equivalent to at least 90 ECTS credits.

Application documents

  1. Certificates and diplomas from previous university studies
  2. Transcript of completed courses and grades included in your degree
  3. Proof of English proficiency
  4. A copy of your passport including personal data and photograph, or other identification documents

Specific documents for the master's program in Software Engineering of Distributed Systems

  • Curriculum Vitae
  • Autobiographical Statement (Motivation Letter)
  • 2 Letters of Recommendation
  • Certificate showing relevant work experience, if applicable
Last updated Apr 2020

About the School

KTH Royal Institute of Technology has served as one of Europe’s key centres of innovation and intellectual talent for almost two hundred years. Recognized as Sweden’s most prestigious technical univer ... Read More

KTH Royal Institute of Technology has served as one of Europe’s key centres of innovation and intellectual talent for almost two hundred years. Recognized as Sweden’s most prestigious technical university, KTH is also the country’s oldest and largest. With over 12,000 students and an international reputation for excellence, the university continues to nurture the world’s brightest minds, helping to shape the future. Read less