Mike Shah

About Me

Computer Graphics
Mike Shah near Faneuil Hall in Boston



I completed my Ph.D. at Tufts University in the Redline Research Group in 2017. My Ph.D. thesis advisor was Samuel Z. Guyer. I completed my Masters degree in Computer Science in 2013 at Tufts University, and my Bachelors in Computers Science Engineering at The Ohio State University in 2011. I am currently teaching faculty at Northeastern University.


Computer Graphics
Teaching involves: Lecture + Lab + 1:1 time + and some self-guidance.

The following are a list of courses I have developed and taught

  • Spring 2019, Northeastern University
  • Fall 2018, Northeastern University
  • Summer 2018, Northeastern University
  • Spring 2018, Northeastern University
  • Fall 2017, Northeastern University
  • Summer 2017, Tufts University
    • Comp 11 - Introduction to Computer Science
  • 2010-2017, Ohio State and Tufts University teaching assistant/fellow roles
    • The listing of my courses that I TA'd, co-taught, or served as a lab instructor are here.


Computer Graphics
My research stack consists of C/C++, Java, Processing, and other assorted tools/apis/libraries.

My main interest is studying program performance of real time systems in the context of games and computer graphics applications. I perform my research by building static analysis, dynamic analysis, and software visualization tools. [Google Scholar Link]

  • Peer Reviewed Publications
    • Gaming/Graphics
      • CHIPLAY 2018, Dungeon Digger: Apprenticeship Learning for Procedural Dungeon Building Agents [Preprint]
    • Static/Dynamic Analysis
      • SOAP 2018, Iceberg: A Dynamic Analysis of Java Synchronized Methods Investigating Runtime Performance Variability [Preprint] [Slides]
      • SOAP 2016, Iceberg: A Tool for Static Analysis of Java Critical Sections [Preprint][ACM Link][Slides]]
    • Software Visualization
      • VISSOFT 2016, An Interactive Microarray Call-Graph Visualization [Preprint][IEEE Link]
      • VISSOFT 2016, Critical Section Investigator Building Story Visualizations with Program Traces [Preprint][IEEE Link][Video]


A selection of talks in the above playlist. Best viewed within the youtube website.

This section contains peer reviewed conference talks, guest lectures, invited lectures, and some research competitions I have participated in.
  • 2019
    • ACM Student Chapter - Introduction to Program Analysis [Slides]
    • Workshop - Building a Game Portfolio [Slides]
  • 2018
  • 2017
    • Getting a job in the game industry [Slides]
    • Hands on Introduction to LLVM Lecture at MIT [Slides]
  • 2016
    • Profile-Guided Optimization LLVM Lecture at MIT [Slides]
    • 4th Tufts Ignite Talk - (CSI) Critical Section Investigator Slides (3rd Place Talk)
    • Invited Talk: Introduction to LLVM at MIT [Slides]
    • Introduction to Parallelism Teaching Fellow talk at Tufts [Video]
    • (Invited Talk) Pint of Science – How do Computers Compute so Fast [Slides]
    • 19th Annual Tufts Graduate Student Research Symposium
  • 2015
    • 3rd Tufts Ignite Talk - Microarray Visualization [Slides] (3rd Place Talk)
    • 2014, Programming Language Mentoring Workshop(PLMW) One-Minute Madness Talk | [Slide]
  • 2014
    • 18th Annual Tufts Graduate Student Research Symposium
    • Guest Lecture - Remco Chang's Computer Graphics Course
    • 1st Annual Tufts Ignite Talk - Code Advisor
  • 2013


Computer Graphics

I have participated in helping create many university organizations, and served in several roles to improve the academic experience of undergraduate and graduate students.

  • Northeastern University
    • 2018-2019, Director of CCIS Fellows
    • 2018-2019, Undergraduate Committee
    • 2018, Program Committee for SIGCSE 2019 Paper Reviewer
    • 2018, Program Committee for VISSOFT 2018 Paper Reviewer
  • Tufts University
    • 2016-2017 Tufts Graduate Student Council President
    • 2014-2016 Tufts founder of Computer Science League of Learning Graduate Student Group
    • 2013-2016 Tufts University Graduate Student IT Committee Seat
    • 2016, National Association of Graduate and Professional Students National Conference. Open Panel Discussion
    • 2016, National Association of Graduate and Professional Students Northeast Regional Conference. GSO. Slides to be posted
    • 2014-2015 Tufts University Graduate Student Council Academic and Career Planning Chair
    • 2013-2014 Tufts University Graduate Student Council Secretary
    • 2014, National Association of Graduate and Professional Students Northeast Regional Conference. Data-Driven Advocacy. [Slides]
    • 2013, National Association of Graduate and Professional Students National Conference. Talk on Technologies Role in Student Organizations. [Slides]


Computer Graphics
Check out Glimpse Podcast for more interviews with great scientists.

  • 2018
    • GLIMPSE Podcast Interview - Teaching Humans Computer Science
      • This podcast describes my journey into computer science, a little bit about my research, and a few teaching tips!

Personal Projects and Fun

Personal Projects
  • I enjoy tutoring programming, and am working on several Python lessons for first time programmers.
  • I consider myself an amateur pizza maker, although this web link needs to be updated with more content. The art of pizza
  • I am a long distance runner. I have run the Columbus marathon twice(2009,2010), several half marathons(2009,2011,2013,2018), and most recently a Full Tough Mudder(2018)
  • I enjoy playing the guitar, typically acoustic songs or alternative rock. Some favorite bands are:
Non-Academic Publications
  • Non-Academic Publications 2014, February 4. On Increasing Enrollment of Computer Science Courses. Tufts Daily. Link | PDF
Fun Facts
Please do not redistribute or host any materials without e-mailing me first. I generally am happy to share the latest .pdf or slide presentation with those who ask. Thank you for your time!