Jonathan Henckel Updated: 8 Jan 2008 email: john@formulus.com 59451 390 Ave, Zumbro Falls, MN 55991 tel. 507-753-2216 Skills Summary » Seven years C++ object-oriented development experience. » Six years experience designing and developing 3D collision detection algorithms. » Extensive 3D physics and graphics experience on PC and games consoles. » Internet projects with HTML, Perl, PHP, Java applets/servlets, and Javascript. » Programming experience in Physics, Graphics, Database, Communications, and AI. Work Experience Apr 04 - present Software Consultant Independent Consulting, Zumbro Falls, MN Development and maintenance of internal software libraries for collision detection and physics simulation for Electronic Arts games. Jul 03 - Mar 04 Senior Software Engineer Criterion Software, Guildford, England Brought Renderware Physics up to product-level quality standards. Architected the Renderware 4 collision and spatial database system. Improved the time-of-impact algorithm. Designed and implemented a remote visualizer that is used to debug physics applications running on PlayStation2 and Xbox. Integrated new physics constraint solver technologies. Sep 01 - Jun 03 Senior Software Engineer MathEngine, Oxford, England Designed and implemented collision detection system for two major game physics engines: Karma (used by Epic Games' Unreal Engine) and Renderware Physics. Developed new algorithms for collision detection, contact generation, and time-of-impact calculation. Wrote cross-platform C code for PlayStation2, PC, Xbox, and GameCube. Implemented optimizations for real-time performance on game consoles. Jan 00 - Feb 01 Chief Technology Officer PageLab Network, Inc., Minneapolis, MN Designed and developed a new high-performance natural dialog search engine, Subjex.com, with merchant/affiliate e-commerce tracking system using industry standard technologies: Linux, Java, and mySQL. Investigated and set corporate direction for new technologies such as XML, wireless protocols, and streaming media indexing. Feb 99 - Jan 00 Physics Simulation Researcher Industrial Mindworks, Atlanta, GA Architected a platform independent 3D simulation and graphics library. Designed and implemented a general purpose physics simulator by integrating many advanced techniques: GJK collision detection, impact dynamics, jointed multibodies using Lagrange multipliers, and cloth and flexible body simulation using damped springs. Wrote papers on vector mathematics, collision detection, and simulation methods. Aug 88 - Feb 99 Staff Software Engineer IBM Corporation, Rochester, MN CORBA Distributed Object Technologies for NT and AIX Gained expertise in object-oriented design and programming, C++, Java, CORBA architecture and object services. Wrote WebSphere Externalization and Persistence Services. Wrote the object server container and hashing algorithms. Multimedia Technologies for the AS/400 Wrote serial communication code to control VCRs, laserdiscs, and cameras remotely. Wrote C routines to support image conversion, compression, and dithering in various image formats. Artificial Intelligence Technologies for the AS/400 Implemented several neural network algorithms and developed a new rule extraction mechanism. Wrote SQL database access code to support several expert systems tools. Filed seven U.S. patents. Education Jan 90 - July 93 M.S. Computer Science University of Minnesota, UNITE Master's project: Theorem prover with natural language interface. Described and implemented a mapping from English to first order logic and a resolution based deduction engine in C. Sept 82 - Apr 86 B.S. Computer Science University of Michigan, Ann Arbor