Resume for Dr. Michael J. Gourlay

Michael J. Gourlay

mijagourlay@mijagourlay.com

Michael Jason Gourlay business card

SKILLS

Programming: Physical modeling and analysis, animation, networking, multi-threading, 3D graphics, real-time rendering, AI, …

Languages: C/C++. Some: HLSL, Cg, C#, Perl, Java, JavaScript, TCL/Tk, Mathematica, D3D, VRML, HTML, LATEX, SQL.

Software Development: MS Visual Studio, Perforce, SN Systems ProDG, DevTrack, VTune. Some: SourceSafe, CVS, lex/yacc, …

Platforms: XBox & 360, PlayStation 2 & 3. Some: GameCube, MS Windows, Unix (inc. X Window System)

Graphics: Real-time interactive, visual effects, scientific analysis and visualization. Some: network visualization, morphing.

Scientific Research: Computational Fluid Dynamics, vortex dynamics, turbulence. Some: Networking, Radar, AMO physics.

Communication: writing articles and tutorials, teaching, publishing, world wide web, documenting software, some video

EXPERIENCE

Microsoft - Analog. Platform, 2012-present

Principal Lead Software Development Engineer, 2013-present

  • Led head tracking, surface reconstruction and calibration runtime teams on HoloLens and Windows Holographic.

  • Co-developed algorithms that led to patents.

Senior Software Development Engineer, 2012-2013

  • Prototyped runtime feature.

Electronic Arts – EA Sports, Tiburon Studio, Orlando, Florida, 2002-2012

Senior Software Engineer, 2005-2012

  • Software architect for Football Sports Business Unit.

  • Infinity Engine character physics engineer for Core Football Gameplay group for Madden & NCAA.

  • Senior lead software engineer for Madden NFL 2012 (Career), 2011 (General), 2006 (Graphics), developed for XBox 360 & PS3.

  • Architected data-driven, designer-friendly system for authoring career modes (FranTk), used to make Connected Careers. Wrote compiler & virtual machine.

  • Designed and implemented visual effects framework (Lynx) adopted by EA Sports worldwide.

  • Augmented procedural animation system (ANT) for Football (Madden & NCAA) and Mixed Martial Arts (MMA).

  • Implemented visual effects for Madden 07, NASCAR 08 for Xbox 360 & PS3.

  • Liaison for co-developed outsourced software projects at remote sites.

  • Participated in cross-franchise game steering committee.

Software Engineer III, 2003-2005

  • Led development team for NASCAR 06: Total Team Control, developed for PS2 and XBox.

  • Led online team for NASCAR 2005: Chase for the Cup, developed for PS2, XBox and GameCube.

  • Invented and patented (US7680038) dynamic network bandwidth detection and response system for online games.

  • Augmented artificial intelligence system to support teammates and archrivals.

  • Participated in effort to share technologies across studios for next generation console development.

  • Led development team for NASCAR NG investigation for NextGen consoles (postponed to favor Madden 06 as a launch title).

  • Innovated software development strategy for transition to NextGen.

  • Provided consulting to NASCAR PC team and to an external partner software development company.

  • Wrote code reviews and performance evaluations, and refereed code reviews written by other engineers.

  • Enhanced physics engine, improving gameplay, vehicle damage effects, multiple vehicle types.

  • Profiled and optimized CPU and memory.

  • Wrote tools and process documents for finding and removing memory fragmentation.

  • Wrote technical article for EA Knowledge Journal, on my dead reckoning convergence algorithm.

  • Gave technical presentation to studio about network architecture.

  • Participated in steering committee for design of studio-wide online front end, adopted worldwide.

Software Engineer II, 2002-2003

  • Led online team for NASCAR Thunder 2004, developed for PS2, XBox and GameCube.

  • Invented novel dead reckoning convergence scheme to smooth trajectories of remote vehicles to hide latency.

  • Authored process documents for code introduction, architecture, network protocols, etc.

  • Designed and implemented multiplayer networking architecture, subsequently adopted by entire studio.

  • Presented NASCAR software architecture, FlowManager, which studio subsequently adopted.

  • Designed triangular patch interpolation system for smoothing existing terrain models.

  • Wrote technical design documents for new game features.

  • Introduced new task dependency resolution and scheduling practice which studio adopted.

Northeastern University, 2017

Lecturer, 2017

  • Teach and develop online/hybrid Computer Science courses in the Computer Science graduate program.

Studio B, 2009-2016

Subject Matter Expert

  • Wrote articles for hire for Intel and Gamasutra, on interactive multi-threaded fluid simulation, profiling and optimization.

University of Central Florida – Florida Interactive Entertainment Academy, Orlando, Florida, 2005-2009

Research Associate

  • Developed graduate curriculum for interactive media design courses.

  • Taught graduate programming classes.

  • Member of Ph.D. thesis committee for Erin Hastings, dissertation entitled Automatic Graphics and Game Content Generation Through Evolutionary Computation.

  • Member of Ph.D. thesis committee for Paul Varcholik.

  • Implemented pedagogic framework for interactive simulation and visualization (a game engine)

  • Designed and implemented novel real-time interactive 3D fluid simulation.

  • Provided consulting to Intel and Lockheed-Martin for game and simulation development.

Northwest Research Associates Inc. / Colorado Research Associates div., Boulder, CO, 1996-2002

Research Scientist, Principal Investigator, 2000-2002

  • Wrote proposals and budgets, obtained funding and executed research projects supporting multiple scientists.

  • Led turbulent wakes investigations using massively parallel high performance supercomputer simulations.

  • Participated in laboratory experiments for submerged wake flows.

  • Held security clearance.

Research Scientist, Co-Investigator, 1999-2000

  • Used Computational Fluid Dynamics to research vortex dynamics of turbulent submerged wake fluid flows.

  • Co-developed Practical Supercomputing Toolkit (PST) for DoD High Performance Computing Modernization Office.

  • Participated in HPCMO Metacomputing Working Group, Grid security and encryption infrastructure.

  • Member of High Performance Computing Modernization Program (HPCMP) User Advisory Panel (UAP).

  • Pioneer user of Department of Defense Grid.

  • Augmented spectral Computational Fluid Dynamics (CFD) code.

  • Developed multithreaded, cross-platform software for analyzing and visualizing enormous 3D data sets.

  • Developed OGLE large-scale scientific and medical visualization volume renderer.

  • Member of thesis committee at Naropa Institute.

Research Assistant, 1996-1999

  • Researched dynamics of vortices in turbulent shear fluid flows using CFD simulations.

  • Co-developed Viz, visualization system, in cooperation with Norwegian Defense Research Institute (FFI).

  • Upgraded PAOS ATRAD atmospheric MF radar at Rothera base, Antarctica.

  • Administered Unix computer systems.

University of Colorado at Boulder, Boulder, Colorado, 1994-1999

Research Assistant - Laboratory for Atmospheric and Space Physics, 1995-1999

  • Investigated 3D turbulent shear flow instability using supercomputer simulations.

  • Research led to Ph.D. in physics, specializing in computational fluid dynamics, vortex dynamics, turbulence.

  • Tutored and assisted in teaching physics classes and laboratories for Physics Department.

  • Developed speech and singing analysis and synthesis toolkit.

Georgia Institute of Technology, Atlanta, Georgia, 1988-1994

Systems Analyst - GTRI Signature Technology Laboratory, 1989-1994

  • Assisted in modeling, building and testing of radar systems. Held security clearance.

Software Developer - Graphics, Visualization and Usability Lab, 1993-1994

  • NetVis Analyzer network visualization application, funded by National Science Foundation.

  • Developed Xmorph digital image warping and morphing applications for X Window System.

  • Participating in creation of “PSA” computer animation for SIGgraph 1994, Orlando, Florida.

Research Tech. / Software Developer - Computer Engineering Research Lab, 1989

  • Developed test suite to exercise novel massively parallel supercomputer hardware architecture.

Software Developer / Teaching Assistant - Georgia Tech School of Physics, 1988-1990

  • Studied chaotic dynamics of high-energy atoms in electro-magnetic fields involving analysis in Mathematica.

  • Created rocket launching and navigation interactive pedagogic simulations and taught physics students.

EDUCATION

PUBLICATIONS

Gourlay, M.J. & Held, R.T. (2017): “Head-Mounted Display Tracking for Augmented and Virtual Reality”, Information Display.

Gourlay, M.J. (2009-2016): “Fluid Simulation for Video Games”, parts 1-21, Intel Software Network.

Varcholik, P (2014): “Real-Time 3D Rendering with DirectX and HLSL: A Practical Guide to Graphics Programming”, Addison-Wesley. I was a technical editor and contributed material for the Run-Time Type Information (RTTI) and Factory sections.

Gourlay, M.J. (2011): “GenEx, Generic Expression Language: How to write a compiler and virtual machine for anything.”, EA Knowledge Journal, Electronic Arts, November.

Gourlay, M.J. (2010): "Dynamic Bandwidth Detection and Response for Online Games", United States Patent 7680038.

Gourlay, M.J. (2009): “Fluid Simulation for Video Games”, Gamasutra.

Gourlay, M.J. (2009): “Vehicle Wakes.” Electronic Arts Knowledge.

Gourlay, M.J. and Glumac, R. (2008): “Lynx: Sharing VFX Worldwide” Electronic Arts Knowledge, September.

Gourlay, M.J. (2004): “Dynamic bandwidth detection and response for online racing games”, Electronic Arts Knowledge.

Gourlay, M.J. (2003): “Dead Reckoning with Targeting: smooth, efficient, natural extrapolation convergence for online racing games”, Electronic Arts Knowledge, November.

Fritts, D., Gourlay, M., Orlando, W., Meyer, C., Werne, J., Lund, T. (2003): “Numerical simulation of late wakes in stratified and sheared flows”, User Group Conference Proceedings, June 9-13, pp. 206-210.

Johansson, P.B.V., William, K.G. and Gourlay, M.J., “Equilibrium similarity, effects of initial conditions and local Reynolds number on the axisymmetric wake.” Physics of Fluids, vol. 15, n. 3, March 2003.

Gourlay, M.J., S.C. Arendt, D.C. Fritts, J. Werne (2001): “Numerical modeling of initially turbulent wakes with net momentum.” Physics of Fluids, December.

Gourlay, M.J., Werne, J. & Fritts, D.C. (2001): “Numerical late-time wake hydrodynamics of a sub-surface bluff body in stratification”, ONR report.

Gourlay, M.J., Werne, J. & Fritts, D.C. (2001): “Direct numerical simulations of initially turbulent wakes”, DoD HPC UGC, Biloxi, Mississippi, June 18-21.

Gourlay, M.J. (2001): “Numerical Modeling of Turbulent Wakes”, Abstracts of XXVI General Assembly of the European Geophysical Society, Nice, France, March 25-30.

Gourlay, M.J., S.C. Arendt, D.C. Fritts, J. Werne (2000): “Numerical modeling of turbulent non-zero momentum late wakes in density stratified fluids.” Fifth International Symposium on Stratified Flows, July 10-13, 2000, Vancouver, Canada.

Gourlay, M.J., S.C. Arendt, D.C. Fritts, J. Werne (2000): “Numerical modeling of turbulent zero momentum late wakes in density stratified fluids.” Department of Defense High Performance Computing Modernization Program Users' Group Conference Proceedings, June 5-9, Albuquerque, New Mexico.

Gourlay, M.J. (2000): “The OGLE Tutorial: Creative Data Visualization Gone Wild”. Creative Linux Journal, June.

Gourlay, M.J. (2000): “OGLE-ing the Visible Human: An OGLE Demonstration”. Creative Linux Journal, July.

Gourlay, M.J. (1999): “Shapeshifter: An Xmorph Tutorial”. Creative Linux Journal, December.

Gourlay, M.J. (1999): Stability and Dynamics of Stretched Fluid Shear Layers. Ph.D. thesis, University of Colorado at Boulder, July.

Gourlay, M.J. (1997): “American English Diphone Text Corpus.” University of Colorado at Boulder technical communication, December.

Gourlay, M.J. (1996): “Stretched Fluid Shear Layers”, Abstracts of XXI General Assembly of the European Geophysical Society, The Hague, The Netherlands, May 6-10.

Gourlay, M.J., Uzer, T., and Farrelly, D. (1993): ``Asymmetric-top description of Rydberg-electron dynamics in crossed external fields.'' Phys. Rev. A, v.47, n.4, April, pp.3113-3117.

Smith, I. E. and Gourlay, M.J. (1990): “HardCore SIG: Parallelism and the NeXT workstation.” NeXT Users' Journal, Issue 8, July, pp. 28-33.

PRESENTATIONS

Gourlay, M.J. (2017): “Augmented and Virtual Reality (keynote)”, VR Days Europe 2017, October 25-27, 2017 (invited).

Gourlay, M.J. (2017): “Future of Augmented and Virtual Reality (keynote)”, Foundation of Digital Games 2017, August 17, 2017 (invited).

Gourlay, M.J. (2017): “Computer Vision on Microsoft HoloLens”, CVPR 2017, July 26, 2017.

Gourlay, M.J. (2016): “Insider Tips for Developing on Virtual and Augmented Reality Platforms", Virtual and Augmented Reality, University of Washington, May 17th, 2016 (invited).

Gourlay, M.J. (2016): “Making the Virtual Real: The Future of Augmented and Virtual Reality”, International Conference on Multimedia and Expo (ICME) July 11, 2016 (invited).

Gourlay, M.J. (2016): “Augmented and Virtual Reality Development (keynote)”, Otronicon, January 16, 2016 (invited).

Gourlay, M.J. (2016): “Developing for Augmented and Virtual Reality Platforms", University of Central Florida / Florida Interactive Entertainment Academy Tech Talk, Jan 14, 2016 (invited).

Gourlay, M.J. (2015): “Incorporating Environmental Understanding into Computer-Human Interaction", Georgia Tech GVU Center Distinguished Alum Brown Bag Seminar, Oct 22, 2015 (invited).

Gourlay, M.J. (2011): “Get In the Game.”, Red Stick Animation Festival Retrospective, Louisiana State University, Baton Rouge, November 10 (invited).

Gourlay, M.J. (2011): “GenEx, Generic Expression Language: How to write a compiler and virtual machine for anything.”, Electronic Arts, Tiburon, November 2.

Gourlay, M.J. (2010): “Fluid-body simulation using vortex particle operations.”, International Conference on Computer Graphics and Interactive Techniques (SIGGRAPH), Los Angeles, Session: Animation, article 8, 2010.

Gourlay, M.J. (2009): “Fluid Dynamics for Video Games.”, High Performance Graphics 2009, New Orleans, LA, Aug 1-3.

Gourlay, M.J. (2009): “Turbulent fluid motion for particle systems.” Game Developers Conference, San Francisco, CA, Mar 23-27.

Gourlay, M.J. (2008): “Interactive simulation of fluid motion for particle systems.” International Conference on Computer Graphics and Interactive Techniques, ACM SIGGRAPH, Los Angeles, California, August 11-15.

Gourlay, M.J. (2006): “VFX for Next-Gen Games.” Visual Effects Workshop, EAUK, Chertsey, England, December.

Gourlay, M.J. (2005): “Visual Effects.” VFX Summit, EA Tiburon, Orlando, Florida, September.

Gourlay, M.J. (2004): “More Data Now: dynamic bandwidth detection and response”, Electronic Arts Tiburon, October.

Gourlay, M.J. (2003): “Online Pack Racing: NASCAR Thunder for PS2”, Electronic Arts Tiburon, October 16.

Balfour, M., Imbert, S. & Gourlay, M.J. (2002): “FlowManager”, Electronic Arts Tiburon, October.

Gourlay, M.J. & J. Werne (2002): “Practical Supercomputing Toolkit”, Department of Defense High Performance Computing Modernization Program Users Group Conference, Austin, Texas, June.

Gourlay, M.J. (2002): “Uniform Command Line Interface”, Department of Defense High Performance Computing Modernization Program (HPCMP) Metacomputing Grid Workshop, Engineering Research and Development Center Major Shared Resource Center, Vicksburg, Mississippi, February 25-28.

Werne, J, D. Fritts, C. Bizon, C. Meyer, M. Gourlay, M. Davis, K. Julien, P. Sullivan, B. Circelli, R. Walters, C. Fuson, P. Adams (2002): “Atmospheric optical turbulence characterization for the Airborne Laser using combined measurement and simulation techniques”, Department of Defense High Performance Computing Modernization Program 12th Users Group Conference, Austin, Texas, June.

Werne, J. & Gourlay, M.J. (2001): “Practical Supercomputing Toolkit”, Department of Defense High Performance Computing Modernization Program 11th Users Group Conference, Biloxi, Mississippi, June.

Circelli, B, P. Adams, J. Werne, M. Gourlay, C. Meyer & C Bizon (2001): “Investigation, visualization and interpretation of large scientific data sets”, Department of Defense High Performance Computing Modernization Program 11th Users Group Conference, Biloxi, Mississippi, June 21.

Gourlay, M.J. (2001): “Numerical Modeling of Turbulent Wakes”, XXVI General Assembly of the European Geophysical Society, Nice, France, March 25-30.

Gourlay, M.J., S.C. Arendt, D.C. Fritts, J. Werne (2000): “Numerical modeling of turbulent non-zero momentum late wakes in density stratified fluids.” Fifth International Symposium on Stratified Flows, July 10-13, 2000, Vancouver, Canada.

Gourlay, M.J. (2000): “Scientific Visualization of Volumetric Data”, ERDC MSRC Scientific Visualization Workshop, Vicksburg, Mississippi, June 25-26.

Gourlay, M.J. (2000): “Numerical stratified wake hydrodynamics”, Department of Defense High Performance Computing Modernization Program 10th Users Group Conference, Albuquerque, New Mexico, June.

Gourlay, M.J. (1996): “Stretched Fluid Shear Layers”, XXI General Assembly of the European Geophysical Society, The Hague, The Netherlands, May 6-10.

GRANTS

“Numerical Modeling of Initially Turbulent Wakes”, Office of Naval Research contract N00014-99-C-0148.

“Numerical Modeling of Initially Turbulent Wakes of Submerged Bodies in Background Shear”, Office of Naval Research contract N00014-01-C-0298.

“Numerical Modeling of Wake Turbulence for Naval Applications” Office of Naval Research HPCMP Challenge 1719, Co-I.

“Numerical Modeling of Turbulent Wakes in Ambient Shear and Stratification for Naval Applications” Office of Naval Research HPCMP Challenge 1723, PI.

HONORS

  • ΣΠΣ National Honor Society for outstanding physics students

  • ΓΒΦ National Honor Society for academic achievement

  • ΦΚΦ National Honor Society for academic achievement

  • Golden Key National Honor Society

  • L. M. Fitten Academic Scholarship for undergraduates

  • Honors undergraduate physics at Georgia Tech

  • Graduated with Highest Honors, September 1993 from Georgia Tech, in Physics

  • National Science Foundation Undergraduate Intern in Physics, Fall 1991 - Summer 1992

  • National Science Foundation Undergraduate Intern in Computer Science, Winter 1993 - Fall 1993

  • International Thespian Honor Society, troupe 850

INTERESTS AND HOBBIES

  • SCUBA diving, sailing, kite-boarding, flying kites

  • Collecting and programming Atari 8-bit computers and games.

  • Brewing beer, fermenting fruit from my trees and extracting essential oils from herbs in my garden.

  • Large-scale art projects for venues including Burning Man, Geodesika, Freezing Man and major urban centers.

  • Design and construction of robust portable shelters

  • Visual art: Photography, large-scale print-making, painting, drawing, computer graphics and image processing

  • Movies and animation: watching, discussing and making