Before joining the Sharif University of Technology, he worked as a software engineer at Xtreme Labs Inc. (acquired by Pivotal), Toronto, Canada in 2011. Before that, in 2010, he was a post-doctoral fellow in the Faculty of Informatics at the University of Lugano, Switzerland working with Prof. Walter Binder. He finished his PhD studies in 2009 under the supervision of Prof. Krzysztof Czarnecki in the School of Computer Science at the University of Waterloo, Canada. The details of his PhD research can be obtained from here. He also received his MSc and BSc degrees from Sharif University of Technology in 2001 and 1999 respectively. Contact Information