Professor Golab's teaching career began at the University of Toronto, where he completed thirteen teaching assistantships. He was offered his first TAship in 1999 after completing only one term of undergraduate studies. Professor Golab also taught courses on data structures and theory as a sessional instructor at the University of Toronto (2009) and University of Calgary (2010). His teaching activities at Waterloo are described in detail below.