• Institut de la Francophonie pour l’Informatique (IFI) – Hanoi, Vietnam
    • May 2008. Graduate Course: Complexity Theory

  • Concordia University
    • Fall 2013, 2014 and 2015. Graduate course (COMP 6651): Design and Analysis of Algorithms.
    • Fall 2013 and 2014. New graduate course (COMP 691Y): Large Scale Optimization.
    • 2012-2013. Sabbatical Year
    • Fall 2011. Undergraduate course (COMP 445): Data Communications and Computer Networks.
    • Fall 2010. Graduate course (COMP 6651): Design and Analysis of Algorithms.
    • Winter 2010. Graduate course (COMP 6651): Design and Analysis of Algorithms.
    • Fall 2008. Graduate course (COMP 6651): Design and Analysis of Algorithms
    • Winter 2008. Graduate course (INDU 6131): Graph Theory with System Applications
    • Fall 2007. Graduate course (COMP 6651): Design and Analysis of Algorithms.
    • Fall 2006: Undergraduate course (COMP 465): Design and Analysis of Algorithms.
    • Fall 2006. Graduate course (ENCS 6811): Optical Networking: Architectures and Protocols.
    • Winter 2006. Graduate course: Quality Methodologies for Software.

  • Université de Montréal
    • Winter 2005. Graduate course: Integer Programming.
    • 2003-2004: on sabbatical.
    • Winter 2003. Undergraduate course: Téléinformatique (Introductory course on communication networks).
    • Winter 2002. Undergraduate course: Data Structures.

  • École Polytechnique de Montréal
    • Calculus I - Mathematics and Industrial Engineering Department - Winter 1992, 1997.
    • Discrete Mathematics - Electrical and Computer Engineering Department - Fall 1991 - 1993, Fall 1996
    • Data Structures and Algorithms for Operational Research, Ph. D. course, winter 1989, 1990, 1991.
    • Integer Programming, Ph.D. course, Winter 1988 - 1990, 1992, 1993.
    • Algorithmic and Complexity, Ph.D. course, Winter 1993.