Timothy G. McClarren email: tim@7thheaven.org
2164 Hyde Street, #714 phone: 415-674-3552
San Francisco, CA 94109 fax: 415-674-3550
www: http://tim.7thheaven.org
Summary of Qualifications
* 10 years of management experience.
* 20 years of programming experience.
* Successfully developed and released many major software
applications.
* Extensive use of object oriented languages, including C++, Java,
Objective-C, and object oriented frameworks.
* Created and collaborated on several open source software (OSS)
projects.
* Extensive experience with Linux.
* Able to quickly learn new technologies and tools.
November 2009 - present
Chief Architect
Idle Games
Idle Games
Idle Games develops high quality casual games, the "Pixar of
casual gaming".
Architected, designed, and implemented core components of a state-
of-the-art distributed platform for delivering synchronous gameplay
experience to an extremely large concurrent player base (million plus).
The platform forms the foundation of delivering a massively multiplayer
casual game experience across multiple game properties.
Responsible for technical leadership of more than thirty people
across three teams (distributed simulation, persistence, and client).
Responsible for architecture, build-out, and deployment to production
cluster (EC2 cloud environment).
Responsible for release engineering, network operations, scale
automation.
Responsible for internal development processes, including continuous
integration.
Responsible for technology adoptions decisions.
November 2005 - July 2009
Senior Software Engineer
Doppelganger, Inc.
vSide
vSide is a virtual world with player-customizable cel-shaded
avatars in a large world consisting of many urban environments,
populated with nightclubs, cafes, gardens, plazas, galleries,
apartment buildings, etc. (everything you'd find in a real world
city).
Designed and implemented "phone home" feature which allows us to
gather important diagnostic information from a client after it
has experienced a problem.
Designed and implemented custom network protocols for
communicating with persistence and world-state layer.
Responsible for many important scalability and performance
improvement pieces:
Redesign and implementation of script bytecode interpreter
Reducing client connect and load time by an order of magnitiude
acheived by implementing a client-side caching mechanism and a
client-side preload mechanism (2 minutes vs. 6-10 seconds)
Server instance client capacity improvement from a baseline of
60 client connections to over 400
Many server instance performance and simulation improvements
Responsible for server simulation code base and server-side
implementation of client-facing features.
Design and implementation of server to server authentication.
Design and implementation of cross-platform POSIX threading API.
Implementation of the "chat" feature and "profanity filtering".
Implementation of the "buddy list" feature.
Implementation of moderator features to allow a moderator to
monitor players.
Design and implementation of server-instancing which allows a
server representing a particular world-space to be forked
(replicated) and then load-balanced.
January 2004 - January 2005
BEA Systems, Inc.
Senior Software Engineer
Weblogic Workshop (version 9.0)
Designed, architected, and implemented features for BEA's
Java IDE product, Workshop, including code refactoring support,
high-performance multi-file search/replace, source code
control system integration with Perforce, CVS, and Clearcase,
application, workspace, project based build infrastructure,
batch change and preview features, and task/progress framework.
July 2002 - present
Nominum, Inc.
Senior Software Engineer
Foundation Management Console (versions 1.0 - 2.4)
Project lead.
Designed, architected, and implemented Java-based application to
handle address and namespace management tasks for large enterprise
customers with millions of IP addresses and large numbers of names
in the DNS namespace.
Extensive use of Java and surrounding technologies (Swing, EJBs, XML,
JMS).
August 1994 - January 1999
Netscape Communications Corporation
Software Engineer
Netscape Navigator and Netscape Communicator (versions 1.0 - 4.0)
Designed, architected, and implemented first Macintosh version of
popular Navigator browser from concept to deliverable.
Integral part of team of engineers who pioneered the use of the web
for commercial application.
Architected and implemented user interface for browser,
preferences, address book, bookmarks, mail and news, plug-ins, and
implemented cross platform stubs for Macintosh.
Designed and implemented user-interface components.
Performed usability testing.
Extensive performance analysis and tuning.
Client Customization Kit and 'Personal Edition' Account Setup
Created kit to allow customizing 'look and feel' components of
browser, and application 'wizard' to create new accounts and ease
user setup of networking components.
Extensive use of C/C++, using Metrowerks' CodeWarrior/PowerPlant,
and Microsoft's Win32 SDK, with Microsoft Foundation Classes (MFC),
Java, JavaScript, LiveConnect, and DHTML.
August 1993 - August 1994
Sierra Software Innovations
Software Engineer
Salesbase
Created UI class libraries for building user edition forms from
database schema, backend class libraries for SQL queries to local
and remote databases, UI components, and an optimized memory
management library to replace Macintosh Toolbox memory manager.
April 1992 - August 1993
CIScorp
Software Engineer
SNAP
Created UI components for a sales-force automation application
for Macintosh.
Newton Toolkit (NTK)
Created UI for the Newton development environment for Macintosh.
December 1990 - April 1992
National Center for Supercomputing Applications (NCSA)
Research Programmer
Collage
Created UI for interactive groupware application for scientific
data analysis, image processing, and visualization.
ChemEqualizer
Created an application for biochemists to draw stoichiometric
diagrams and perform analysis of systems at equilibria.
Hierarchical Data Format (HDF) Viewer
Created an application to view files saved in HDF, using Renderman
to produce 3D views of data, for NeXTSTEP.
Ported HDF library to NeXTSTEP.
Participated in Apple's 1991 and 1992 Advanced Technology Group's
External Research program, Accelerating Innovation.
August 1986 - December 1990
Mainframe and Workstation Administrator
Unix administration on Sun, DEC, SGI, Alliant, and machines.
Support for network of several hundred Mac's and PC's.
Wrote an automated backup system using scripts.
Education
B.S. Computer Science Engineering
University of Illinois, Urbana-Champaign, 1990.
January 1999 - present
Independent Software Developer
Extensive use of C/C++, Java, PHP, DHTML in ongoing development
of various projects:
Web Drive
Created a web application for allowing file storage and retrieval
via a web server, with a very simple web interface.
Uses PHP and DHTML.
Media Album
Created a web application for quick and easy cataloging of images
and movies, that allows simple user navigation of a large amount
of content, and simple adminstrator edition by drag-and-drop.
Uses PHP and DHTML, along with special image conversion software.
SINS (SINS Is Not ShowEQ)
Created a Linux application for XWindows which sniffs the network
for active sessions of the popular game Everquest, and can
interactively decrypt and display lots of information on multiple
2D maps of the world environment not visible inside the game.
Uses C/C++, pthreads on Linux, Qt application framework.
Websites
Developed several custom websites driven by PHP and MySQL.
Installed and configured Linux servers, with custom kernels,
running RAID level 5, Apache, MySQL, Samba, Netatalk, Cyrus IMAP,
OpenSSL, OpenLDAP, PHP, PHPNuke, Mailman, and many pieces of
custom software.
Built custom hardware.