Teaching
I have over over twenty years experience in class-room teaching. The topics of the courses have varied from introductory courses in engineering mathematics, logic and theoretical computer science to advanced courses in computational logic, combinatorics and search algorithms. During academic year 2022-2023, I am responsible teacher on "Bachelor's thesis" and "Computer organization I" courses.
Teaching during academic year 2023-2024
TKT20013 Bachelor's thesis in Computer Science, Autumn 2023
TKT10006 Tietokone ja Internet, Autumn 2023 (with Jussi Kangasharju and Tiina Niklander)
TKT10006 Computer and Internet, Spring 2024 (with Naser Hossein Motlagh)
Teaching during academic year 2022-2023
TKT20013 Bachelor's thesis in Computer Science, Autumn 2022
TKT10005 Tietokoneen toiminta, Autumn 2022
BSCS1004 Computer Organization I, Spring 2023
TKT100051 Tietokoneen toiminnan perusteet, Summer 2023
Teaching during academic year 2021-2022
TKT20013 Bachelor's thesis in Computer Science, Autumn 2021
TKT10005 Tietokoneen toiminta, Autumn 2021
TKT20003 Operating Systems, Spring 2022
BSCS1004 Computer Organization I, Spring 2022
Teaching during academic year 2020-2021
AYCSM90004en Data Analysis with Python Summer 2021, May 2021 - September 2021
TKT20003 Operating Systems, Spring 2021
BSCS1004 Computer Organization I, Spring 2021
AYCSM90004en Data Analysis with Python, May 2020 - April 2021
Steering group memberships
Member in the steering group for the Bachelor's Programme in Computer Science, University of Helsinki, 2021-2024
Past teaching
Courses lectured (as responsible teacher), Aalto University / Helsinki University of Technology
T-79.4101 Discrete Models and Search, Spring 2015, 2014, 2013, and 2011
T-79.1001/2 Introduction to Theoretical Computer Science T/Y , Autumn 2009
Guest lecturer
DATA11002 Introduction to Machine Learning (in English, 5 ETCS), lecture on Oct. 30, 2019 Department of Computer Science, University of Helsinki
Teaching assistant, Helsinki University of Technology
T-79.3001 Logic in Computer Science: Foundations, Spring 2008, 2007, 2006 /
T-79.144 Logic in Computer Science: Foundations, Autumn 2004, 2003, 2002, 2001.
T-79.1001 Introduction to Theoretical Computer Science T, Autumn 2007, 2006 /
T-79.148 Introduction to Theoretical Computer Science, Spring 2005, Autumn 2004, Spring 2002.
T-79.1002 Introduction to Theoretical Computer Science Y, Autumn 2007, 2006.
T-79.5102 Special Course in Computational Logic, Autumn 2005.
T-79.161 Combinatorial Algorithms, Spring 2005, 2004, 2003.
Mat-1.4xx Basic Course in Mathematics P1/P2/C1/C3, Autumn 1999 - Autumn 2001.
Supervision of Master's theses
Jarkko Savela, Finding Periodic Apartments: A Computational Study on Hyperbolic Buildings, University of Helsinki, June 2020 (co-supervised with Prof. Matti Järvisalo and Prof. Juha Kontinen)
Anton Björklund, Sparse Robust Regression for Explaining Classifiers, Åbo Academi University, August 2019 (co-supervised with Prof. Kai Puolamäki and Prof. Jan Westerholm)
Henri Tiittanen, A method for estimating regression errors with application to virtual concept drift detection, University of Helsinki, August 2019 (co-supervised with Prof. Kai Puolamäki)
Evgenia Antonova, Applying Answer Set Programming in Game Level Design, Master's thesis, Aalto University, December 2015 (co-supervised with Docent Tomi Janhunen)
Laura Koponen, Constraint-based optimization of Phylogenetic Supertrees, Master's thesis, Aalto University, June 2015 (co-supervised with Docent Tomi Janhunen)
Mai Nguyen, Preferential Optimization of University Students' Timetables, Master's thesis, Aalto University, January 2012 (co-supervised with Docent Tomi Janhunen)
Study coordination
Academic coordinator of Master's Programme in Foundations of Advanced Computing (FAdCo), Aalto University, August 2013-December 2015
Pedagogical studies
Pedagogical Course for University Level Teachers in Engineering and Natural Sciences (YOOP), Helsinki University of Technology, approx. 22.5-30 ETCS, completed in October 2004
Teaching demonstrations
Teaching demonstration: “Scheduling of processes”, Department of Computer Science, University of Helsinki, January 22, 2020, grade very good
Teaching demonstration: “Method overloading in object-oriented programming”, Department of Computer Science, University of Helsinki, May 15, 2019, grade very good
Teaching demonstration: “Gradient descent optimization methods”, Department of Computer Science, Aalto University, April 26, 2019, grade good