Nowadays, my teaching and learning activities involve designing and delivering graduate and undergraduate courses in Software Engineering. As the coordinator of two Software Engineering degrees (i.e., Bachelor of Engineering (Software) and Masters of Engineering (Software) at the University of Adelaide, I am responsible for leading and mentoring the teaching and learning efforts for the development and delivery several courses. I have led the efforts to redevelop BE (Software) degree and improve several aspects of the ME (Software) degree according to the recently released IEEE/ACM guidelines for Software Engineering (Bachelor) curriculum. I also led the efforts to successfully obtained the full accreditation of the BE (Software) degree by the joint board of Engineers Australia and Australian Computer Society.

I have been involved in the delivery of three brand new courses, Engineering Software as Services I & II, and Software Engineering Workshop I. I designed and delivered three graduate level courses and one PhD summer course at IT University of Copenhagen. Before taking up a full time academic position as an associate profession at the IT University of Copenhagen, Denmark from December 2009, I had been involved in teaching undergraduate and graduate level courses offered by three Sydney-based Australian universities, the University of New South Wales, Australia, the Macquarie University, and the University of Technology, Sydney, since March 2000. During that period I took up various academic roles ranging from a tutor to course designer/lecturer. My teaching and educational engagements have got me involved in the design and delivery of several software engineering and computer science related courses such as software architecture, cloud computing, software quality, project management, requirements analysis and system design, and database management systems.