Andero Kalju

Software Engineering


International students can apply to the Software Engineering Master’s programme from 1 January until 15 March by using DreamApply. Estonian applicants from 1 February to 15 March by using National Admission Information Systems (SAIS).

If you have questions regarding the programme, write to the Programme Director, Prof. Dietmar Pfahl or for general questions about admission.


  • The induction session for the 1st year students of the academic year 2022/2023 can be found here.

The curriculum of Software Engineering is designed to form T-shaped, full-stack software engineers.

The programme starts with a core module where you will acquire general software engineering skills, covering both technical aspects (systems modelling and programming) and also management skills.

You will then choose one of two specialisations:

  • Enterprise Software at the University of Tartu
  • Embedded & Real-time Software TalTech.

A range of elective and free-choice courses will allow you to further specialise or to broaden your horizons.

During the second year, you will put your skills into use, first via an internship or an entrepreneurial project, and secondly via a research or engineering project leading to the defense of a Master’s thesis.

Curriculum structure

1. Core module (24 ECTS)

The core module is taught in the first semester. Two of the courses are taught at TalTech in Tallinn, and two are taught at UT in Tartu. TalTech arranges for a free bus shuttle from Tartu to Tallinn on Wednesdays. Buses leave in the mornig from Tartu and return in the evening from Tallinn.

  • Advanced Programming (TalTech)
  • Agile Software Development (UT)
  • Software Quality and Standards (TalTech)
  • Systems Modelling (UT)

2. Specialisation module (24 ECTS) - choice of two modules

At the latest at the end of the first semester, students must decide which specialisation module they want to pick. The courses in the two specialisations are listed below.

  • Enterprise Software (taught at UT) - for students who started in 2018:
    • Business Data Analytics or Machine Learning
    • Business Process Management
    • Enterprise Systems Integration
    • Software Product Management
  • Enterprise Software (taught at UT) - for students who started after 2018:
    • Obligatory course:
      • Enterprise System Integration (6 ECTS)
    • Select two courses from the following three courses:
      • Business Process Management (6 ECTS)
      • Software Product Management (6 ECTS)
      • Requirements Engineering (6 ECTS)
    • Select one course from the following three courses:
      • Business Data Analytics (6 ECTS)
      • Machine Learning (6 ECTS)
      • Big Data Management (6 ECTS)
  • Embedded & Real-Time Software (taught at TalTech)
    • Embedded Software Workshop
    • Real-time Software Engineering
    • Software Synthesis and Verification
    • System Programming
    • Telecommunication Services and Network Application Frameworks

3. Elective courses (12 ECTS)

At UT, any regular course taught at Master's level in the Computer Science and Software Engineering programs and starting with LTAT.* or MTAT.* can be chosen as an elective course. The list of elective courses in the Student Information System (SIS) is showing examples of courses that can be selected. NB: Since the courses MTAT.00.023, MTAT.00.028, MTAT.03.206, and MTAT.03.237 are not "taught" they cannot be used as elective courses.

The rules for chosing elective courses at TalTech must be asked from Gert Kanter or Siiri Taveter (see under "People" below). A list of elective courses taught at TalTech can be found here.

4. Optional courses (6 ECTS)

Any course taught at the UT or at TalTech can be chosen as an optional course. However, for students who started in 2023, the following restriction applies: The Estonian language course (6 ECTS) is compulsory for students with no prior knowledge of Estonian. Students who have graduated from a high-school located in Estonia or earned a university degree in an Estonian-taught curriculum are exempt from taking the Estonian language course.

5. Practice module (18 ECTS)

The practice module takes place in the third semester. Details can be found here

Important: Students taking the Enterprise Software specialization must take their practice module at TalTech. Students taking the Embedded & Real-time specialization must take their practice module at UT. This has to do with the fact that the Master's of Software Engineering degree program is a joint degree between UT and TalTech and at least 20% of all credits (i.e., 20% of 120 ECTS) must be taken from either university.

6. Master’s seminar (6 ECTS)

You must take two seminars that are offered on master's level. One of the two seminars must either be the Seminar on Enterprise Software (offered at UT in the spring term) or the Master Seminar I (at TalTech). The second seminar can be a regular (research) seminar at UT or the Master Seminar II (at TalTech).

If you want to take both seminars at the same university, the following choice is available:

  • At UT you can choose once the Seminar on Enterprise Software (any part is ok; will only be offered in spring) and one regular (research) seminar - each seminar has 3 ECTS.
    • Important: The Seminar on Enterprise Software is a pre-requisite for the second seminar; any regular (research) seminar offered at the Institute of Computer Science to MSc students can be taken
  • At TalTech you can choose Master Seminar I & II (each seminar has 3 ECTS)

7. Master’s thesis (30 ECTS)

The Master's thesis is usually started during the 3rd semester and fully developed and completed during the fourth semester. The student must have a supervisor either from UT or from TalTech. The thesis topic must be discussed and agreed with the supervisor. 


Semester outline

Semester 1 Core module (4 courses = 24 ECTS) plus one course (optional, elective, specialisation = 6 ECTS)
Semester 2

Speciality 1 (24 ECTS): Embedded and Real-Time Software (Taltech University)
Speciality 2 (24 ECTS): Enterprise Systems (University of Tartu)

Plus one MSc seminar course from the seminar module (3 ECTS) and one elective course (6 ECTS - or optional course, if not yet taken in the first semester)

If one specialisation course has already been taken in the first semester, then one additional elective course should be taken (6 ECTS)

Semester 3 Internship or Entrepreneural Project (18 ECTS); plus one MSc seminar course from the seminar module (3 ECTS); plus one elective course (6 ECTS - or optional course, if not yet taken in first or second semester)
Semester 4 Master's thesis (30 ECTS); the thesis topic should already been agreed in the third semester between student and supervisor; the supervisor must be from UT or TalTech

Frequently Asked Questions 

A list of FAQs with answers can be found here

Industrial Master's Programme in IT

As a first-year student of Computer Science, you can apply to the Industrial Master’s Programme in IT. The programme participants spend most of the second year of their studies at partner companies. For master’s students, this is an outstanding opportunity to unite two essential phases in life without compromising on either of them: to start their professional career and to graduate from their master’s studies in a nominal time. The program participants find a topic for their master’s thesis, get their obligatory practical training done and find professional and personal development opportunities. And for all that, you will receive a scholarship of 1000 euros per month!

More information can be found here.


The following persons can be contacted with regards to questions about the Master's of Software Engineering program:

  • Dietmar Pfahl (UT): Program Director and Coordinator of the Enterprise Software specialisation at UT; main contact for academic questions related to the overall program and the Software Enterprise specialisation;
  • Gert Kanter (TalTech): Program Coordinator at TalTech; main contact for academic questions related to courses offered at TalTech and the Embedded & Real-Time Software specialisation; he is the main contact for students who take the practice module at TalTech;
  • Pelle Jakovits (UT): Practice Coordinator at UT; he is the main contact for students who take the practice module at UT;
  • Paula Luks (UT): Administrative Coordinator at UT; she is the main contact for all administrative questions (enrollment, student information system, documents, etc.) related to courses taught at UT;
  • Siiri Taveter (TalTech): Administrative Coordinator at TalTech; she is the main contact for all administrative questions (enrollment, student information system, documents, bus shuttle to Tallinn, etc.) related to courses taught at TalTech.
Tudengid seisavad diplomitega

Student Project Contest 2024


Admission to the University of Tartu international master's programmes ends on Friday


How to successfully apply for internships? Industrial Masters in IT introduction and career counselling seminar.