Publications | Talks
Make a thing to make a thing: 3d-printable Procedural Content in the BrowserRougelike Celebration, 2020
Let's get Physical: 3d Printing for RoguelikesRougelike Celebration, 2019
Creating Digital Societies in VRSIGGRAPH 2016.
Panel presentation with Stephanie Riggs, Blair Erickson, and Bill Booth. We presented Sagea, an immersive interface for HMDs and led a discussion on how to create Digital Societies in VR.
Maya Programming with Python CookbookPACKT Publishing, July 2016
MFA Arts, Computation, Engineering
University of California, Irvine. 2003-2006
BFA, Time-based and Electronic Media
Carnegie Mellon University, 1997-2001Served as a TA for Randy Pausch's "Building Virtual Worlds" class
Senior Software Engineer
January 2022 - present
I work on a variety of things related to our WithMe (Unreal-based metaverse) and MetaJuice (web3 / NFT) divisions.
- Implement gameplay and tooling for Unreal with C++/Blueprints
- Prototype web-based 3d features using JS / ThreeJS
Senior Interactives Engineer
August 2020 - Dec 2021
I worked on the Interactives team, building interactive content to teach STEM subjects, using Elm.
- Implemented interactive content using Elm
- Designed Elm-based APIs for use by course authors
- Implemented features for course authoring infrastructure
Senior Software Engineer
May 2019 - July 2020
I worked on a team building games and interactive experiences using the Display.land ecosystem, which was built using React and ThreeJS.
- Served as the tech lead on an upcoming game project
- Implemented features for a photogrammetry-based social networking app using React
- Built gameplay features using a ECS based game engine using JS and typescript
- Implemented backend features using node, express, and dynamoDB
- Built art prep tools using Blender and Python, as well as with JS and our custom tech
- Implemented discord integration with a web-based 3d game
November 2017 - May 2019
I served as a Staff Engineer on the games team, which is responsible for making cognitive training games.
- Worked on a variety of game features using C# and JS, using Unity and Cocos Creator
- Prototyped numerous game ideas (mainly JS / canvas)
- Developed and open-sourced a lightweight JS-based game engine for rapid prototyping (stirling.js)
- Developed content pipeline tools using Python and JS
October 2016 - November 2017
- Built features for Google's Slack-like chat app
- Helped to maintain the Hangouts codebase
May 2013 - July 2016
Cofounder / president of Jamwix, a media startup focused on making high-quality games and experiences based on creativity and playfulness.
- Designed client architecture for CineMagic: Hollywood Madness, a match-three/collectible card game mashup for iOS and Android
- Implemented game systems using Haxe / OpenFL
- Implemented UI for the first feature-length film released for virtual reality (Banshee Chapter: Oculus Rift Edition, Halloween 2014) using C++ / SDL
- Implemented parody versions of Reddit, Youtube, Imgur, and the Huffington Post as part of the "Reddit3016", a satirical look at what the internet might look like in 3016 (http://reddit3016.com/).
- Created a demo (using Unreal) of a virtual reality content aggregation system which was shown as part of the VR Village at SIGGRAPH 2016
Lead Gameplay Engineer
August 2011-May 2013
I joined KIXEYE just before War Commander launched, and helped to grow it into a top-rated strategy game on Facebook with 100k daily active users.
- Managed a team of 9 client developers
- Provided technical designs for numerous game systems
- Implemented numerous game systems spanning all aspects of the game using AS3 and C++
- Released new features and bug fixes on a two-week release schedule
- Worked with server teams to add a persistent world map to the game post-launch
- Worked with server teams to add synchronous PvP combat to the game post-launch
Senior Software Engineer
January 2011-June 2011
Worked on both front-end (JS, jQuery) and back-end (PHP, MySQL, Node.js) development for Cull, a social video site. First engineering hire.
- Used the Facebook API to create a channel of videos from videos posted by people in your social network
- Implemented a system to collect feedback from users on new features
- Implemented playback controls and user interface elements using JS / jQuery
Senior Software Engineer, Playstation Home
Sony Computer Entertainment, America
September 2008-January 2011
I was a member of the PlayStation Home Product Development team, which was responsible for creating levels, games, and virtual items for PlayStation Home.
- Designed a wide range of games and interactive experiences
- Implemented a wide range games using Lua and the Home SDK
- Designed a large-scale system to support rapid deployment of gameplay elements
- Designed a system to allow non-engineers to quickly and easily author narrative-based gameplay in Home
- Designed one of the most highly-trafficked levels in Home (the Playground)
Millions of Us
January 2008-June 2008
I served in the engineering department of a small agency specializing in created branded experiences in virtual worlds and new media
- Created interactive experiences in several different platforms, including web-based ARGs and consoles
- Implemented arcade games and interactive objects in Playstation Home using Lua
- Designed and implemented (in Flash) the final puzzle for the Terminator: Dark Discovery ARG (official Honoree, 2009 Webby awards)
November 2006-January 2008
I worked as a web developer in the Creative Services team.
- Developed numerous internal web applications to make company processes more efficient and easier/more pleasant to use
- Personally responsible for significant components of internal infrastructure
Academy of Art University
January 2003-May 2007, February 2010-December 2011, January-May 2016
I've worked at AAU as an instructor in the 3d animation, New Media, and Game Programming departments, teaching both undergrads and graduate students.
- Taught classes in game programming with C++
- Taught classes on web technologies (JS, MySQL, PHP, HTML, CSS)
- Taught classes on various aspects of Maya and MEL scripting
- Created materials for online classes
- Served as an advisor for master's degree students
PTEI - Regenerative Medicine Partnership in Education
May 2001 - Jan 2002
Produced content for use in an planetarium-based project to teach junior and senior high school students about tissue engineering.
- Created a range of biomedical animations using Maya
- Wrote MEL scripts to support the team
- Coordinated the efforts of undergrad animators
Virtual World Developer
May 1999-January 2001
Created objects, environments, and animations both pre-rendered and real-time, for use in an 3d internet application for the elderly.
- Built out real-time environments in ActiveWorlds
- Created pre-rendered animations using 3d Studio Max