Electrical & Computer Engineering, University of Waterloo
Associate Dean, Co-operative Education & Professional Affairs
Faculty of Engineering
University of Waterloo
Office: E2-1772
Associate Professor
Electrical & Computer Engineering
University of Waterloo
Office: E7-5426
Previously: Director, Software Engineering (2020-2023)
Faculty Advisor for Student Design Teams
- WATonomous Urban Autonomous Vehicle Team
- SAE AutoDrive Challenge
- Amazing Race Canada
- Globe and Mail
- CBC Kitchener
- 570AM (minor typos in transcript of recorded audio)
- WATORACE Autonomous Vehicle Racing Team
- UWaterloo News 2021-10-20
- UWaterloo Engineering News 2021-10-20
- Global News 2021-10-20
- UWBlueprint.org Tech for nonprofits, built by uWaterloo students.
Companies Advised
- daVinci Retail
- Stema Punch
- QuantStamp verification for smart contracts
- I am not involved in any other blockchain nor cryptocurrency company. Some websites have been using my name without my permission.
- PinPress programmable surfaces for advanced manufacturing
Publications
- An Engineering View of Regulating AI in Canada's Financial Institutions (February 28, 2020)
- DBLP (software engineering / computer science papers)
- Google Scholar (also includes collaborative papers in other disciplines)
- Derek Rayside, H.-Christian Estler, and Daniel Jackson. A Guided Improvement Algorithm for Exact, General Purpose, Many-Objective Combinatorial Optimization. MIT-CSAIL-TR-2009-033 (http://hdl.handle.net/1721.1/46322)
Prospective Students
I am looking for students at all levels, including URA, 499 projects, fourth year design projects, co-op, MASc, and PhD. For co-op, MASc, and PhD, send me an email if you are interested in any of the topics discussed in my recent papers. For 499 and fourth year design projects I have a variety of projects, both that I am directly interested in and from external customers; schedule an appointment.
Current Graduate Students
- Ekin Eray (Ph.D., co-supervised with Carl Haas)
- Mohammad Alsharman (Ph.D., co-supervised with William Melek)
Completed Graduate Students
- Vajih Montaghami (Ph.D. 2017)
- Atulan Zaman (M.A.Sc. 2016)
- Murphy Berzish (M.A.Sc. 2016)
- Asif Khan (M.A.Sc. 2016): Towards Microfluidic Design Automation
- Mitra Khatibi (M.Eng. 2015): A Policy-Based Multi-Faceted Interactive Dynamic Data Visualization and Smart Recommendation System
- Ahmed Ibrahim (M.A.Sc. 2014): Cooperative Based Software Clustering on Dependency Graphs
- Matthew (Ming) Ma (M.A.Sc. 2014): Virtual Machine-Assisted Collaborative Junk Object Detection
- Adrian Filip (M.Math. 2012): Software Journeys
Teaching
- ECE351 Compilers
- Lab manual, course notes, etc, in Git
- Lab manual copied here for your convenience: Lab manual
- Course notes copied here for your convenience: Course Notes
- Discussion on Piazza
- A Compiler Project With Learning Progressions. Paper describing the design of the labs. Appeared in ICSE'14 Companion.
- Software Engineering Capstone Design Project Courses (SE390/SE490/SE491)
- course website (includes Handbook and indices of past projects)
- SE464: Software Design & Architecture
- Alloy
- ECE James A. Field Teaching Award, 2016.
- Engineering Society Teaching Award Runner Up (March 2016)
- Teaching Excellence Academy (April 2016)