Ming-Ho Yee http://github.com/mhyee * mh@mhyee.com * http://mhyee.com -------------------------------------------------------------------------------- RESEARCH EXPERIENCE Research Assistant Northeastern University, Boston MA Sep 2016 -- present Research Assistant University of Waterloo, Waterloo ON Sep 2014 -- Aug 2016 Capstone Design Project University of Waterloo, Waterloo ON Sep 2012 -- Apr 2014 Undergraduate Research Assistant University of Waterloo, Waterloo ON Sep -- Dec 2012 Research Assistant and Developer University of Waterloo, Waterloo ON May -- Aug 2012 WORK EXPERIENCE Researcher Intern Microsoft Research, Cambridge UK Sep -- Dec 2019 - Worked on memory management for [Project Verona](https://github.com/microsoft/verona) Software Development Engineering Intern Microsoft, Redmond WA May -- Jul 2014 - Implemented a partial prototype of concepts lite in the Visual C++ compiler Software Development Engineering Intern Microsoft, Redmond WA Sep -- Dec 2013 - Implemented user-defined literals for the Visual C++ compiler Software Development Engineering Intern Microsoft, Redmond WA Jan -- Apr 2013 - Prototyped, developed, and evaluated a heap memory collection tool for .NET applications Developer Engagio (formerly Eqentia), Toronto ON Sep -- Dec 2011 - Along with a senior developer, designed, built, and launched [Engagio](http://www.avc.com/a_vc/2011/12/engagio.html), "the universal commenting inbox" - Optimized the background task queuing system to dynamically prioritize fetch tasks Developer Eqentia, Toronto ON Jan -- Apr 2011 - Designed and implemented a feature for users to add content by sending emails - Co-led the implementation of the new front-end interface redesign Software Development Research Intern Genesys Telecommunications Laboratories, Markham ON May -- Aug 2010 - Developed a proof-of-concept speech analytics application to improve customer experience at call centres Junior Developer Robarts Research Institute, London ON Jul -- Aug 2008 - Implemented a new module for pre-existing data analysis software, using IDL (Interactive Data Language) - [Examined MRI spectroscopy data with the new module to research drug treatments for Alzheimer's Disease](https://doi.org/10.1016/j.jalz.2009.04.138) PUBLICATIONS - O. Flückiger, G. Chari, M.-H. Yee, J. Ječmen, J. Hain, J. Vitek, [Contextual Dispatch for Function Specialization](https://doi.org/10.1145/3428288), OOPSLA 2020, Nov 2020 - O. Flückiger, G. Chari, J. Ječmen, M.-H. Yee, J. Hain, J. Vitek, [R Melts Brains: An IR for First-Class Environments and Lazy Effectful Arguments](https://doi.org/10.1145/3359619.3359744), DLS 2019, Oct 2019 - M.-H. Yee, A. Badouraly, O. Lhoták, F. Tip, J. Vitek, [Precise Dataflow Analysis of Event-Driven Applications](https://arxiv.org/abs/1910.12935), (preprint), Oct 2019 - O. Flückiger, G. Scherer, M.-H. Yee, A. Goel, A. Ahmed, J. Vitek, [Correctness of Speculative Optimizations with Dynamic Deoptimization](https://doi.org/10.1145/3158137), PACMPL (POPL) 2018, Jan 2018 - M. Madsen, M.-H. Yee, O. Lhoták, [From Datalog to Flix: A Declarative Language for Fixed Points on Lattices](https://doi.org/10.1145/2908080.2908096), PLDI 2016, Jun 2016 - M. Safa, M.-H. Yee, D. Rayside, C. T. Haas, [Optimizing Contractor Selection for Construction Packages in Capital Projects](http://dx.doi.org/10.1061/%28ASCE%29CP.1943-5487.0000555), ASCE J. Comput. Civ. Eng., Jan 2016 - E. Zulkoski, C. Kleynhans, M.-H. Yee, D. Rayside, K. Czarnecki, [Optimizing Alloy for Multi-objective Software Product Line Configuration](https://doi.org/10.1007/978-3-662-43652-3_34), ABZ 2014, Jun 2014 - R. Bartha, M.-H. Yee, R. Rupsingh, M. Smith, M. Borrie, [Altered macromolecule signal in the hippocampus in alzheimer patients measured by 1H magnetic resonance spectroscopy](https://doi.org/10.1016/j.jalz.2009.04.138), Alzheimer's &; Dementia: J. Alzheimer's Assoc., Jul 2009 TECHNICAL SKILLS - Experienced with C, C++, Scala, Java, and Ruby - Familiar with C#, Perl, x86 and MIPS assembly, and JVM bytecode - Some knowledge of Racket, OCaml, Haskell, ARM assembly, and LLVM IR - Comfortable with Linux, macOS, and Windows environments TEACHING EXPERIENCE Teaching Assistant Northeastern University, Boston MA Jan -- Apr 2018 - [CS 2510: Fundamentals II, Introduction to Class-based Program Design](https://course.ccs.neu.edu/cs2510sp18/) Teaching Assistant University of Waterloo, Waterloo ON May 2015 -- Aug 2016 - [CS 444: Compiler Construction](https://www.student.cs.uwaterloo.ca/~cs444/) (Winter 2016) - [CS 241E: Foundations of Sequential Programs, Enriched](https://www.student.cs.uwaterloo.ca/~cs241e/) (Fall 2015) - [CS 241: Foundations of Sequential Programs](https://www.student.cs.uwaterloo.ca/~cs241/) (Spring 2015, Spring 2016) SERVICE Student Volunteer - ECOOP 2019, SPLASH 2018 (local organizer), ECOOP 2018 (co-chair), POPL 2018, PLDI/ECOOP 2017, ECOOP 2016, PLDI 2016 Artifact Evaluation Committee - ECOOP 2018 External Reviewer - VEE 2019, ECOOP 2017, CC 2016 AWARDS - NSERC Postgraduate Scholarship - Doctoral 2016 -- 2019 - Graduate Fellowship 2016 -- 2017 - NSERC Canada Graduate Scholarship - Master's 2015 -- 2016 - President's Graduate Scholarship (x2) 2014 -- 2015, 2015 -- 2016 - Ontario Graduate Scholarship 2014 -- 2015 - NSERC Canada Graduate Scholarship - Master's (declined) 2014 - Ontario Professional Engineers Foundation Medal for Academic Achievement Jun 2014 - Software Engineering Capstone Design Project Symposium, First Place Mar 2014 - NSERC Undergraduate Student Research Award May -- Aug 2012 - President's Research Award May -- Aug 2012 - Scotiabank Software Engineering Entrance Scholarship 2009 -- 2014 EDUCATION Ph.D. Candidate Northeastern University, Boston MA Sep 2016 -- present Master of Mathematics in Computer Science University of Waterloo, Waterloo ON Jun 2017 Thesis: [Implementing a Functional Language for Flix](http://hdl.handle.net/10012/10856) (completed Sep 2016) Bachelor of Software Engineering University of Waterloo, Waterloo ON Jun 2014 With Distinction --- Dean's Honours List