I have been teaching the following courses to classes with variable sizes (between 15 and 320 students):

In addition, I am regularly giving tutorials and supervision groups for undergraduate students of a variety of backgrounds (currently about four courses per year). These include the following courses: