Liam O'Connor › Curriculum vitæ › Teaching [loc-0007]

The following teaching engagements were/are all at the Australian National University:

2026 Structured Programming. Lecturer Convenor.
2025 Programming as Problem Solving. Lecturer Convenor.

The following teaching engagements were all at the University of Edinburgh:

2024 Domain Theory (TypeSIG) (15 students). Invited Lecturer.
Modelling Concurrent Systems (30 students). Lecturer Convenor, Tutor.
2023 Introduction to Theoretical Computer Science (40 students). Lecturer Convenor.
Discrete Mathematics and Probability. Tutor.
2022 Introduction to Theoretical Computer Science (20 students). Lecturer Convenor.
Informatics 1A. Tutor.
2021 Introduction to Theoretical Computer Science (35 students). Lecturer, Tutor.
Informatics 1A. Tutor.
2020 Informatics 1A. Tutor Supervisor.

The following teaching engagements were all at UNSW Sydney:

2020 Concepts of Programming Languages (190 students). Lecturer.
Foundations of Concurrency (28 students). Lecturer Convenor.
Software System Design and Implementation (308 students). Lecturer Convenor.
Algorithmic Verification (18 students). Lecturer Convenor.
System Modelling and Design. Course Administrator.
2019 Concepts of Programming Languages (111 students).
100% teacher satisfaction. 95.1% course satisfaction.
Software System Design and Implementation (196 students). Lecturer Convenor.
97.3% teacher satisfaction. 93.9% course satisfaction.
2018 Concepts of Programming Languages (96 students). Lecturer Convenor, Tutor.
98.1% teacher satisfaction. 100% course satisfaction.
System Modelling and Design. Tutor (6 tutorials), Relief Lecturer.
94.1% teacher satisfaction.
Software System Design and Implementation. Course Designer and Administrator.
Modelling Concurrent Systems. Tutor (1 tutorial).
2017 Foundations of Concurrency. Tutor (3 tutorials), Relief Lecturer.
Software System Design and Implementation. Course Administrator.
Concepts of Programming Languages. Tutor (4 tutorials), Relief Lecturer.
System Modelling and Design. Tutor (5 tutorials), Relief Lecturer.
2016 Software System Design and Implementation. Course Administrator, Relief Lecturer.
Concepts of Programming Languages. Tutor (3 tutorials), Relief Lecturer.
System Modelling and Design. Tutor (4 tutorials), Relief Lecturer.
2015 Software System Design and Implementation. Course Administrator, Relief Lecturer.
Concepts of Programming Languages. Tutor (3 tutorials), Relief Lecturer.
System Modelling and Design. Tutor (3 tutorials).
Program Reasoning Workshop. Tutor (3 tutorials).
2014 Concepts of Programming Languages. Tutor (3 tutorials), Relief Lecturer.
Program Reasoning Workshop. Tutor (3 tutorials).
Computing 2. Tutor (2 tute/labs), Relief Lecturer.
2013 Concepts of Programming Languages. Tutor (2 tutorials), Relief Lecturer.
Foundations of Concurrency. Tutor (2 tutorials), Relief Lecturer.
2012 Computing 2. Tutor (2 tute/labs), Relief Lecturer, Developing Assignments.
2011 Concepts of Programming Languages. Tutor (2 tutorials), Developing Assignments.
Software System Design and Implementation. Tutor (1 disabled student).
Computing 2. Tutor (2 tute/labs).
2010 Concepts of Programming Languages. Tutor (3 tutorials).
Engineering Design in Computing. Tutor (2 tutorials, 2 consultation hours).
2009 Computing 2. Tutor (1 tute/lab, 3 consultation hours), Developing Assignments.
Computing 1. Tutor (1 tute/lab).