My Medium Resume

This is the most update-to-date version of my resume.

Background

A general-purpose programmer, accidental game developer, aspiring writer, and occasional manager, I discovered Apple II programming in high school and later earned computer science degrees from MIT and Johns Hopkins University.

My career has spanned the semiconductor, defense/government, 3D graphics, mobile Internet and video game industries, with roles ranging from individual contributor to lead programmer to project management to startup operations.

Experience

Technicat

July 2000-present Las Vegas, Nevada

Providing consulting, project management and training services for game developers and publishers, software startups and international corporations.

Contributed to the development of various iOS and Android apps:

Cinefex for iPad by Cinefex

The iOS app for WordsEye, a text-to-3D natural language graphics generation system

App prototypes for for nxTomo Games and Fog City Digital

Self-publishing licensed remake of HyperBowl (see Hyper Entertainment below)

An assortment of small games under the Fugu Games label

Other self-published apps, such as Talk Dim Sum

Worked on video games and graphics applications:

The RC Rally racing game and Emo-Ray teddy bear shooter game in Playstation Home from Heavy Water

The Blue Mars virtual world by Avatar Reality

A version of the Elect BILAT training simulation for the Institute of Creative Technologies by Realtime Associates

Nendo, a 3D modeling tool by Izware

Darkwatch, a vampire western shooter PS2/Xbox game by High Moon Studios

The Tech Deck: Bare Knuckle Grind series of games by Visionscape Interactive

Random stuff:

The Genesis 3 call center system by Magnasync

Web development collaboration software and biometric identification systems for Univessence Digital Systems

Books

Learn Unity 4 for iOS Game Development, published by Apress. Project available on the Unity Asset Store

Technicat on Software, self-published for Kindle and Nook.

Articles and Interviews

gamkedo.community podcast interview with Chris Deleon. Available on iTunes.

Interview with AppBoy.

Made with Unity postmortem.

Open Source

Learn Unity 4 project on Github

Unity pause menu on the Unity community wiki

Proportional column-width support and a few other fixes in JFOR, now part of Apache FOP.

General-purpose NSIS installer scripts on Github

Assorted other repos on github.


Hyper Entertainment

January 2001 — June 2001 Burbank, California

Lead programmer (taking over for the original lead programmer), continued maintenance and development of the HyperBowl arcade and attraction 3D bowling game.

Optimized rendering, added performance analysis tools, an experimental XML format, updated the data importer to work with newer content creation tools, modified the DirectX renderer to work with newer graphics cards, localized the game for French installations, tweaked the audio code, and added support for arcade machines and new gameplay features.

I am now self-publishing a new version of HyperBowl under license from Hyper Entertainment using the Unity game engine.


Neomar

December 1999-July 2000 San Francisco, California

Technical Lead for the web proxy portion of a WAP gateway supporting Neomar’s wireless browser on Blackberry and Palm devices. Implemented HTTP, transcoding, and SSL support all in Java. Design to release in five months, between the Series A and Series B funding rounds.

I left after the company focus pivoted from consumer to B2B (similar to the third season of Silicon Valley). The assets (alas, not the stock) were later acquired by Good Technology.


PRI Automation

December 1998 — December 1999 Redwood City, California

Principal Senior Software Engineer, optimized Interval Logic’s fab automation planning system (Leverage for Planning) using Tcl Pro.

Then led a five-member team responsible for various scheduling system (Leverage for Scheduling) clients, implemented with Visual Basic, Java Swing and XML.


Nichimen Graphics

October 1998 — November 1998 Los Angeles, California

Consultant on followup OpenGL work on Mirai, Nichimen Graphics’s next version of NWorld (see below). Visited nVidia and other graphics hardware vendors to discuss OpenGL compatibility issues.

Digital Chameleon

August 1997 — September 1998 Los Angeles, California

Vice President of Technology at a three-person startup developing 3D computer graphics tools using Java and OpenGL on Silicon Graphics workstations and Windows PCs.


Nichimen Graphics

December 1995 — August 1997 Los Angeles, California

Manager of Core Software, ported the 3D content creation software NWorld from IrisGL to OpenGL on Silicon Graphics workstations, then led a five-member team in porting NWorld onto Windows NT, launching after a year of intensive development with an alpha version of Franz Allegro Common Lisp and various graphics hardware such as Intergraph workstations and nVidia cards.

Responsible for “core” libraries of the system, including OpenGL, audio, licensing, user interface, video.


BBN Technologies

January 1994 — November 1995 Cambridge, Massachusetts

Another security clearance job (but it’s cool, it’s BBN). Principal coder on the ARGUS data management system using Common Lisp and the Common Lisp Interface Manager and helped maintain the PRISM acoustical analysis software. Tried out this new thing called HTML and the World Wide Web.


Science Applications International Corporation

February 1993 — January 1994 Columbia, Maryland

Implemented and integrated the networking code for Distributed Integrated Simulation (basically, networked gaming) at the Johns Hopkins Applied Physics Laboratory, connecting rule-based and manually operated submarine simulations to a networked wargame.

Six months for the the MSTOW wide-area networked simulation exercise, then updated with the VR-Link DIS library in two months for the higher-profile Warbreaker exercise. Was informed a few years later they were still using that code without modification!

Received several letters of commendation from SAIC and APL management. Required crunch time and a security clearance.


Space Telescope Science Institute

September 1990-May 1992 Baltimore, Maryland

Proposal preparation software for the Hubble Space Telescope, used by astronomers to submit requests for HST usage.

Didn’t get very far with the big spec so created an Emacs mode for editing proposals, popular enough with one person in the proposal support group that he requested continued support of the product after I left.

Also prototyped a build system using the Common Lisp Object System.


Massachusetts Institute of Technology

September 1989-September 1990 Cambridge, Massachusetts

Developed simulators and sample applications for content-addressable memory (CAM) architectures, the Database Accelerator and Content Addressable Parallel Processor, at the Microsystems Technology Laboratory, running on Macintoshes and Unix workstations.


Texas Instruments

June 1988 — August 1989 Dallas, Texas

Worked on DROID, a VLSI CAD synthesis tool running on TI Explorer Lisp Machines. Implemented technology libraries and optimized the automated routing system.


Education

The Johns Hopkins University

M.S. Computer Science 1993 Baltimore, Maryland

Teaching assistant for Computer Literacy 101.

Massachusetts Institute of Technology

S.B. Computer Science and Engineering 1988 Cambridge, Massachusetts

6.115 kit

Thesis: Exploiting Parallelisism in Game-Playing Programs. Implemented a Multilisp reversi program on a 33-processor Multilisp machine.

Concentration in Political Philosophy.

Research assistant in the MIT AI Lab, developing machine vision and natural language programs on Symbolics Lisp machines.

Sales rep at the MIT Microcomputer Center. Had a nice phone call from Marvin Minsky asking about buying a Mac.

West Senior High School

1984 Iowa City, Iowa

Autographed sketch from Berkeley Breathed in an art class