I am an experienced game programmer. Over the course of my career I have shipped over a dozen titles across console, pc, web, and mobile platforms.
Spry Fox, Remote (November 2019 to Present)
Senior Software Engineer,
Currently working on a Cozy MMO in Unreal Engine 5. Shipped Cozy Grove, a life sim in Unity.
- Gameplay: Implemented, optimized and polished several features including clothing, dynamic input device switching, and localization including Right to Left language support.
- Engine: Contributed bug fixes to Unity’s new Input System package, which were accepted into Unity’s codebase.
Ubisoft San Francisco, San Francisco, California (January 2018 to October 2019)
Senior Software Engineer I,
I worked on 2 unannounced projects and XDefiant as a Generalist/Gameplay Programmer in propriety C++ engines.
- Gameplay: Prototyped 3Cs (Camera/Controls/Character) and game modes for multiplayer action game. Programmed synced script nodes for gadgets. Owned navigation AI including updating engine nav interface to support multiple types of AI sizes, new navlink types, and better debugging tools.
- Tools: Responsible for programmer and designer “Tech Validation” automated test scripts run before every perforce check in including troubleshoot and maintenance, which caught many dependency issues and contributed to a culture of not ignoring warnings. Quality of life workflow improvements such as C# examples for designers on automating repetitive tasks and writing functionality of testing with multiple clients on one machine easier.
- Leadership: Mentored and managed day to day activities of summer interns. Trained with team that designed proprietary engine and created written documentation for San Francisco and future teams new to the tech stack. PR trained to represent Ubisoft at Grace Hopper Conference and several student talks.
Anki Inc, San Francisco, California (November 2015 to December 2017)
I worked on the robot pet, Cozmo, which combines robotics, gaming, and toys. When shipped it sold out its initial run on Amazon and was the #1 bestselling smart toy, winning several consumer awards.
- Gameplay: Programmed minigames. Wrote dynamic skills system. Created and iterated on First Time User Experience Onboarding. Used Unity 5’s uGUI to create flexible views.
- Engine: Implemented AI freeplay behaviors, states and goals. Integrated 3rd party libraries (text-to-speech, HockeyApp crash reporting.) Implemented input filtering for accelerometer.
- Tools: Wrote unit tests for asset validation. Extended debug menu to display unified data from multiple sources making it cleaner for QA to use. Created initial Maya to robot animation exporter, later the subject of my GDC 2017 talk.
Hackbright Academy, San Francisco, California (January 2017 to April 2017)
Lab Instructor, Intro to Programming (part-time),
I lectured, advised and assisted students in the 12-week Python programming class.
Insomniac Games, Burbank, California (May 2011 to October 2015)
Came onboard during the final year of development and shipped Resistance 3 and 2 DLC packs. I went on to help ship Insomniac’s first cross platform title, Fuse. I then shipped Sunset Overdrive an exclusive for Xbox One title and RATCHET & CLANK PS4.
- Gameplay: Prototyped hero gadget ideas. Worked closely with designers to architect and iterate to find the fun in the collectibles and progression (including skill trees, team perks and XP) systems. Integrated PlayStation®Move controls in Resistance 3.
- AI: Worked with designers on behaviors for enemies and bosses using decider trees and creating scripting functionality.
- Systems: Took ownership of Scaleform middleware integration now used as a shared project.
- User Interface: Sole UI programmer for the HUD, lobby and pause menus. Worked with producers and artists to fix hundreds of must fix localization and TCR/TRC bugs.
Six Degrees Games, Marina Del Rey, California (July 2010 to May 2011)
I developed stand alone experiences and in world experiences as part of the MMO/virtual world Action AllStars. At this startup I worked on a variety of elements including network code, stand alone flash games, and optimizations.
- Optimized the world to consume 20 to 80% less CPU usage and increased framerate by at least 10% on low end machines.
- Helped create monthly seasonal content and missions. Including a Box2D physics game that had the highest subscriber conversion rate compared to other upsells.
- Developed an engine and first mission for inventory, dialog and exploration based game series.
- Created real time multiplayer tower defense style game.
- Wrote SQL queries for logging and data entry.
- Assisted 3rd party developers with debugging and integrating Unity games.
Big Fish Games, Seattle, Washington (May 2007 to July 2010)
I developed social online casual games with a team of artists, designers, and testers per project as well as programmed any needed tools that were required.
- Programmed and shipped three Java applet games, six Flash games, and one Java server; all of which stayed in the top 10 most played games for months after their launch. One of which (Unwell Mel) was ported to a successful download title.
- Delivered projects ahead of schedule despite using new programming languages such as ActionScript3, Java, and Objective-C.
- Assisted in programming and shipped Amazon: Hidden Expedition for the iPhone/iPad. This was a game featured by Apple for the iPad launch.
- Assuming the responsibility of lead game developer for a team of five developers. I wrote general technical specifications describing how games would communicate with the back-end severs. During this process I uncovered several potential issues that would have cost the company hundreds of man-hours to resolve. This led to assisting in integrating the engineering team’s Agile development process into the Game Design team’s work and communication flows helping improve communications between both groups, which had previously been disjointed.
- Wrote and maintained a dev server environment and improved the team’s build process.
- Assumed the responsibility of SDET and wrote testing code and QA tools; contributing to having one of the lowest bug counts on the team.
- Led the team in emphasizing data mining and wrote several scripts to parse SQL data and released patches based on these user actions that were met with positive customer feedback.
- Maintained and updated code written by third party contractors.
- Shipped the Facebook app Treasure Quest, which had over hundreds of thousands of users within its first month.
DigiPen Institute of Technology, Redmond, Washington (2003 – 2007)
Bachelor of Science, Real Time Interactive Simulation (Computer Science)
- Cozy Grove – Switch/PC/PS4/XboxOne 2021
- Cozmo – Connected Toy – iOS/Android 2016
- Ratchet And Clank – PS4 2016
- Sunset Overdrive – Xbox One 2014
- Fuse – PS3/Xbox 360 2013
- Resistance 3 – PS3 2011
- Action AllStars – Online Flash MMO 2010
- Treasure Quest – Flash for facebook 2010
- Amazon: Hidden Expedition – iPhone/iPad 2010
- Team Bingo – Maintained – Flash game and java server for Big Fish Portal 2009
- SnowGlobe Slots and Looking Glass Slots – Flash game for Big Fish Portal/facebook 2009
- Diana Fortune and the Lost Temple of Gold – Java applet for Big Fish Portal 2009
- L.O.B.E. – Java and Flash port game for Big Fish Portal/facebook 2008/2009
- Unwell Mel – Java and Flash port for Big Fish Portal/facebook 2007/2009 – Download version available.
- Unity3d Input System Contributor – Unity Input bug fixes merged on github 2021
- Sudd City Adventures – Unity, Visual Novel released on Steam 2020
- Trendy Tech CEO – AIR published to iOS/Android/Fire 2015
- Random Joke or Fact – Lua, World of Warcraft plug-in 2010
- Bikerz Brawl – C# for Xbox 360/PC using XNA 2008
- Figuring Out How Things Work in an Unfamiliar Codebase – GDC 2022
- Cozmo: Animation Pipeline for a Physical Robot – GDC 2017
- Localizing games for a worldwide audience – GaymerX 2015
- Twine improv – BentCon 2014
- Board Game Design Workshop – Girltopia for the Girl Scouts of Greater Los Angeles 2013
- Live Game Coding Session – Bent-Con 2013
- Panelist, Being a Woman In Technology – init(together) conference 2013