Doctoral Students in Computing Education Research

Aalto University is looking for

Doctoral Students in Computing Education Research

The Learning+Technology research group at Aalto University’s Department of Computer Science is looking to hire up to two new members who will contribute to the group's research on computing education as they work towards their doctoral degrees.

These are salaried positions with a fixed term of four years, starting as soon as possible in 2019. Applications are accepted from April 15th, 2019 onwards until the positions are filled.

We would like to receive applications from people who have an interest in computing education, a desire to learn about learning, a research-oriented mindset, and a Master’s-level degree in an applicable discipline, such as Computer Science, Information Networks, Cognitive Science, Psychology, or Education.

The students will work on one or more of the reseach topics listed below. These topics all fall within the field of Computing Education Research (see the CER FAQ by Andrew Ko).

List of Research Topics

Topic #1: Students' testing and debugging strategies

Testing and debugging are often difficult for students in their first programming courses. To improve this state of affairs, we need more accurate information on how students approach testing and debugging in their first courses.  This can be approached in different ways, e.g., monitoring students work with automatic logging their activities or monitoring their solution process with think-aloud protocols. The research seeks to build better understanding of their thinking and challenges, after which new software tools could be designed and implemented to better support their testing and debugging processes, in terms of various types of feedback mechanisms. How could such novel tools best used in programming  education?

For more information, contact (both) Professor Lauri Malmi ([email protected]) and

University Teacher Otto Seppälä ([email protected]).

Topic #2: Design of efficient program examples

Program examples are one of students’ favorite ways to learn; not all examples are equally effective and efficient, however. Cognitive load theory (CLT), Mayer’s cognitive theory of multimedia learning (CMTL), and the research literature on example-based learning put forward various principles for the design of effective examples. For example, it is argued that it’s more effective to present examples using a combination of audio and visuals rather than just one of those modalities. Some of the principles have strong empirical support in the literature while others have less; almost all of them are unstudied in a programming context and only occasionally applied by programming teachers.

We are looking for a doctoral student to learn about CLT and CMTL and conduct experiments that explore them in a programming context: how can these generic theories inform the design of efficient program examples and visualizations of programs or algorithms? The eventual goal of the research is to improve instructional design in programming courses, textbooks, ebooks, and other learning materials.

For more information, contact Senior University Lecturer Juha Sorva ([email protected]).

Topic #3: Student understandings of functional programming concepts

Concepts such as immutability and higher-order functions, which are traditionally especially associated with functional programming, are increasingly prominent in various programming languages. These concepts also feature increasingly in programming education, even at the introductory level. (Aalto's course Programming 1 is a case in point.)

We are looking for a doctoral student to study beginner programmers'  conceptions and learning. The goal is to find out 1) how learners reason about immutable data, higher-order methods that operate on such data, and closures; 2) which strategies learners use to trace higher-order program execution; and 3) what misconceptions and difficulties learners have. This research can inform the development of programming pedagogies and educational software tools.

For more information, contact  Senior University Lecturer Juha Sorva ([email protected]).

Topic #4: Test cases in automated assessment of programs


Automatic assessment systems are widely used in programming education. Two main approaches for assessing program correctness include:  1) I/O comparison, where students’ program is executed with multiple test cases (input values) and the program output is compared with model program output with using typically some regular expressions to support finding matches, and 2) unit testing where the program is executed against a number of unit tests related to requested methods.  This is an approach which applies to exercises where students get existing code which need to be augmented with their own code.

The challenge in planning test cases for unit testing is that students may have very different approaches to implement solutions.  The test cases should identify correct and incorrect solutions, and the given feedback should guide students towards the correct solution.  This is untrivial. The research seeks to build methods and tools which help to address this problem area both from teacher’s point of view (planning and implementing test cases) and students’ point of view (getting better feedback).


For more information, contact  (both) Professor Lauri Malmi ([email protected]) and

University Teacher Otto Seppälä ([email protected]).

Topic #5: Supporting students in program design

Designing and implementing their first larger programs is a major challenge for many students.  While we can teach them tools and methods, for example, for OO design, from their perspective there are many steps from such general knowledge to applying it fluently in real coding.

The research seeks to understand, how students reason while designing their programs, and how we could help them with technical software tools. What kind of feedback is relevant here? What data we need to collect and it can be implemented to enable generating meaningful feedback to support students?

For more information, contact Professor Lauri Malmi ([email protected]).

How to Apply

To apply, please send us a free-form application detailing your background and your motivation for computing education research. Include a CV and a record of your earlier university-level studies.

In your application, please indicate which of the above research topics most interest you and why. (You can pick multiple topics.) You may also bring up other topics of interest within computing education research, if applicable.

Send your application via email to both: Professor Lauri Malmi, [email protected] and Senior University Lecturer Juha Sorva, [email protected] or through the application link below.

About Us

At the Learning+Technology research group (LeTech), our two main interests are:                           

1) computing education research, with a particular emphasis on programming education;

2) the construction and evaluation of interactive tools for blended and online learning.

We have a history of developing interactive software tools for learning since the early 1990s; this includes tools for program visualization, algorithm visualization, automatic assessment, and gamified learning. We do not only build novel tools but have extensive experience in applying the tools in large-scale programming courses and empirically evaluating the tools to explore their impact on students’ learning outcomes, conceptions, processes, and motivation.

In addition to tools-based research, we investigate teaching and learning programming and computing more generally. For example, we study students’ conceptions and misconceptions of computing concepts, the cognitive challenges of learning to program, informal learning of computing, and the application of theories from education and psychology to computing education.

We have high visibility in the international computing education research community.  The group is led by professor Lauri Malmi and currently includes three other senior members, three doctoral students, and several junior research assistants. For more information about research at LeTech, see our publication list on Google Scholar and our web site.

Aalto University is a multidisciplinary, international research university in Finland. It is located conveniently in the capital area. In 2018, Aalto's Department of Computer Science ranked #1 in Finland and #7 in Europe, according to the education rankings by U.S. News and World Report. For more information about Aalto University, see Working at Aalto.

  • Published:
  • Updated:
URL copied!