Palo Alto, CA 94306
Note: This is the long-form edition of my resume. If you want the
short attention span version, please see my LinkedIn profile
Expert developer of advanced software technology
Architect and implementor of highly scalable, high performance servers for games, web applications, e-commerce, network management, distributed computation, and data delivery.
Master of refactoring, reengineering, replatforming, and software overhaul.
Author of numerous language compilers, translators, interpreters, and related tools for image processing, games, and distributed computation.
Principal or contributory designer & implementor of advanced distributed object protocols, secure distributed cryptographic capability systems, distributed programming languages, secure e-commerce, and low-bandwidth realtime multi-user interactivity.
Managed development of several different large distributed applications in promiscuously multi-platform environments.
Pioneer in multi-user online systems for commerce and entertainment
Principal designer and development leader of the first large scale, massively multi-user graphical online virtual world, Lucasfilm's Habitat.
Coiner of the term "avatar" in its modern technical sense, meaning the graphical representation of a user in an online system.
Creative and technical advisor for several other massively multi-user online virtual environments in the United States and Japan, including Fujitsu Habitat, WorldsAway, and Fujitsu Habitat II.
Conducted engineering overhaul of the world's largest (at the time) graphical chat system, The Palace, supporting an expansion of the user base from 50,000 users to over 1,000,000 in less than a year, while increasing system MTBF from hours to months.
Implementation architect and development manager of the world's first person-to-person online marketplace and e-commerce system, The American Information Exchange, prior to the Internet revolution.
Participated in the development of the world's first distributed hypertext system, Xanadu (the system for which the word "hypertext" was originally coined), a decade and a half prior to the advent of the World Wide Web.
Contributing developer on a number of successful computer games, including Koronis Rift, PHM Pegasus, The Eidolon, and Maniac Mansion (all from Lucasfilm Games). In particular, I was the original compiler implementor for SCUMM, the scripting system and game engine that underlay numerous Lucasfilm and LucasArts game titles from the late 1980s onward.
Experienced high-tech entrepreneur and guru
Author or co-author of business plans for startup companies that collectively attracted over $100 million in corporate and venture funding.
Attracted elite management and technical team members to bleeding edge technology ventures through persuasive presentation of opportunity and vision.
Frequently invited to speak at conferences and workshops on the topics of online social systems, massively multi-player games, electronic commerce, and distributed systems.
Regularly engaged as a technical consultant and expert witness in patent litigation as a consequence of a career that included the creation of fundamental prior art in numerous areas of online and distributed systems technology, with numerous patents to my name.
Excellent software engineering and design skills. Vocal proponent and skilled practitioner of object-oriented design methodology before it was trendy (and before there were reasonable tools for it, either). Particularly strong in language design and translation, communications protocol design, and asynchronously coupled distributed systems, including highly scalable, high performance servers.
Effective leader of technical people. Very good at building highly collaborative teams for attacking extraordinarily difficult technical problems. Skilled mentor of up-and-coming developers, helping ordinary coders become extraordinary. Able to work well with non-technical people. Not tolerant of traditional antagonism between marketing and engineering.
Accomplished developer of both applications and platforms for the web environment, including large-scale webservices, specialized multi-tier backend servers, and highly interactive browser applications ("Ajax"), as well as conventional websites large and small. Grizzled veteran of web standards babel and experienced browser compatibility wrestler.
Master of remedial software engineering, including superior code refactoring and reengineering skills. Unreasonably good at taking complex, crufty, unreliable, bug-infested legacy junk and turning it into clean, legible, maintainable, extendable, and extremely reliable software.
Superior understanding of the social dimensions of software systems design, including multi-user interaction, online virtual communities, and virtual world creation.
Particularly knowledgeable about computer security, cryptographic protocols, and distributed systems, and especially the interaction of these, as well as the further entanglement of these subjects with issues of software quality and system reliability.
Excellent command of written English. Consistently able to produce clear and intelligible written materials, technical and non-technical. Literate.
Accomplished at oral and multimedia presentations to both small and large audiences. Able to work a crowd.
Quick study. Able to adapt easily to new situations. Able to absorb large quantities of new technical and business knowledge in a small amount of time. Master of the black art of documentation reading.
Broad perspective. Able to combine visionary ideals with ruthless pragmatism.
Ampersand, Los Gatos, California
2017-present: Senior Engineer
Ampersand is an early- to mid-stage startup aimed at revolutionizing the publishing industry.
I'm currently the most senior member of Ampersand's engineering staff, reporting directly to the CTO. As is typical of startups, this leads to a fairly broad portfolio of responsibilities. I'm currently the lead developer for our backend systems and operations infrastructure (servers, operations management, and our CI/CD system), but I also spend much of my time overseeing general architecture and code quality issues in all parts of our system, notably shepherding the refactoring of large chunks of bad legacy code (it's remarkable how much baggage can accumulate in just two or three years, especially if developers are smart and energetic, which ours are). This work serves the dual purposes of improving our reliability, agility, and adaptability, while at the same time helping our developers improve their architectural instincts and engineering intuition.
Major accomplishments to date have included (1) consolidating our backend data systems from multiple different species of data stores (AWS DynamoDB, mySQL, and various home grown, ad hoc things) to just one (mySQL), including migration of all existing stored data, (2) replacing our continuous build and deployment infrastructure, a somewhat dodgy pile of bespoke code written around various AWS APIs, with a much cleaner and simpler system based on Kubernetes; in particular, this has enabled us to maintain side-by-side production and development instances of our entire deployment and operations infrastructure, so that we are no longer forced to test many kinds of infrastructure changes in production as had been the practice when I joined the company.
PayPal, San Jose, California
2012-2016: Principal Architect
As a member of the PayPal Central Architecture organization, I was part of a small group responsible for the overall governance of PayPal's large and sprawling codebase. My roles included developing the build and deployment design for PayPal's cloud strategy, and being a company wide advocate for improved engineering practices and the retirement of technical debt. A good deal of my time was spent providing technical guidance, education, and mentoring to the more junior members of the engineering organization.
More recently, as a member of the PayPal Core Platform & Infrastructure organization, I was principally concerned with a massive overhaul of the PayPal build system that handles compilation, linking, and packaging of some 50 million lines of C++ code. We reduced build times from 60-90 minutes on some of the largest and most expensive machines available to a typical case of 1-5 minutes or less on more modest hardware, using very clever work avoidance and work sharing techniques. In the later phases of this project, my main focus was developing a distributed computation system for massively parallel build and test execution on commodity hardware in the cloud.
Suddenly Social, Inc., Palo Alto, California
2010-2012: Chief Technology Officer & co-founder
Main founder and CTO of a startup aimed at the mobile online games market, founded by a group of Lucasfilm Games alumni. Our goal was to create game experiences that used mobile devices to overlay online game worlds with the real world in which players were physically present, using, for example, a smart phone's GPS receiver, accelerometers, and gyroscopes to correlate the player's physical position and actions with corresponding behavior in the game environment.
In support of this, I created a highly scalable server platform that enabled large numbers of mobile device and web browser-based clients to stay continuously connected in real time (a single instance of this server running on an AWS "large" virtual machine could support 150,000 to 200,000 concurrent users sharing a common game experience, and could scale to as many servers as needed to accommodate the load). Licenses and support contracts for this technology became the company's largest revenue source.
Responsible for all technical activity at the company, including supervising the engineering staff and contractors. Also heavily involved in technology license negotiations, technical sales, and fund raising (the latter included both obtaining initial venture capital investments and negotiations involving acquisition by another company).
MSB Associates, San Mateo, California
Member of a small team of elite, highly experienced technology professionals consulting in the areas of software engineering, computer security, social media, online games, patents & other intellectual property, product design & product management, and business strategy.
As a consultant, notable clients have included Zynga and Microsoft, as well as numerous law firms. Projects have included developing online fraud prevention and abuse mitigation technology, assisting clients with software reengineering and legacy code issues, and working on advanced operating system concepts. Legal work has focused on assisting clients with expanding patent portfolios and functioning as a technical expert for the defense in patent litigation, especially locating and documenting patent-invalidating prior art.
WeMade Entertainment, USA, Kirkland, Washington
2008-2009: Chief Technology Officer
Responsible for fundamental technology, platform architecture, and overall engineering management for the newly formed North American wing of established Korean online games developer and operator WeMade Entertainment. WeMade USA's mission was focused on providing the parent company with an organic western cultural competency in the online games business, rather than simply localizing existing Korean properties. This included strategic acquisitions in the west as well as direct production of western-sourced game content. Though WeMade is a large company, the US organization functioned as an autonomous startup.
In addition to setting up and managing the company's engineering organization as a whole, my work concentrated on development of a gamer-oriented community service targeted at players of the company's games. This service was differentiated from many of the other entrants in the crowded social networking arena in its enthusiastic embrace of the mix of both real and fictitious personae that characterize MMOs, and in its robust support for the fundamentally tribal nature of many gamer groups, in contrast to the more lightweight, interest-centered group abstractions characteristic of many competing services. I was in responsible for primary product design for this service, in addition to the technical aspects.
Yahoo!, Sunnyvale, California
2005-2008: Principal Technical Yahoo, Communities & Identity
Principal architect and development team leader for the Yahoo! Core Identity Platform (CoreID). CoreID provides a unified framework for the storage, retrieval and presentation of identity information for all of Yahoo!'s 500+ million registered users. The platform consists of a set of webservices available to all of Yahoo!'s many disparate properties, along with client software, user interface components, user interface design standards, and a set of best practices for the handling of this information throughout the Yahoo! network. The platform is currently deployed in some half-dozen data centers around the world, and most Yahoo! properties are now integrated with it.
Principal architect and development team leader for the Yahoo! Reputation Platform, a general purpose system for the collection, management, and analysis of reputation information, exploiting the knowledge extractable from the emergent patterns of behavior of large populations of users. The platform is implemented as a highly scalable dataflow engine, passing fragments of observational data and user input through graphs of simple agents. These graphs then implement various models of reputation and revealed preference.
Member of Yahoo!'s Social Media advisory group, a small team of senior executives and trusted experts chartered with identifying key thinkers and influencers in the online communities and social media space and bringing them into Yahoo!'s orbit as employees or advisors; with focusing research and development initiatives in this area; and plotting overall corporate strategy for leveraging the unique asset that is Yahoo!'s enormous registered user base.
Avistar Communications, Redwood City, California
Principal architect refactoring a large codebase (~1.2 million lines of C++) for a high-end desktop video conferencing and telecommunications system, in service of a strategic corporate transition from being primarily a hardware company to primarily a software company. Although the system in question is highly capable, it was not originally constructed with an eye to modularity or portability, since the primary platform was initially the company's own proprietary hardware product. The ultimate goal of this effort was to remodularize the software so that components may be licensed to third party hardware manufacturers in the form of a "Video Operating System".
Reengineering efforts centered on imposition of rigorous coding standards, removal of large amounts of excess mechanism and spurious complexity, and bottom-up refactoring of major abstraction boundaries that had grown tangled and murky over the product's 10 year history. A big piece of this was coaching and mentoring the existing software development team (10-12 engineers) to help them improve their design skills, engineering intuition, and code quality.
A significant initial achievement was the incorporation of video-over-IP technology into the product's video call routing and management infrastructure, which historically was based on circuit-switched analog video. The product's original circuit-switched connection abstractions proved an ideal substrate for building a general-purpose resource management framework for bandwidth, even over packet-switched networks. The IP-enabled version of this system was released to customers in summer 2004.
State Software, San Jose, California
2001-2002: Chief Architect and Board Member
Architect and principal server developer for the State Application Framework, a platform for delivering stateful, real-time, interactive, single- and multi-user applications over the web. This product enabled customers to develop applications possessing the responsiveness and interactivity conventionally associated with installed desktop application software, yet it allowed these applications to be presented to end users within the users' own standard web browsers. This was an early manifestation of the approach now commonly referred to as Ajax, allowing the application to be delivered directly in the browser without recourse to plugins, Java applets, downloads, software installations or other like barriers to adoption and use. Customers included A.T.Kearney (a division of EDS) and Amazon.com.
Developed techniques for running a virtual full-duplex, object-to-object message channel over standard HTTP, avoiding the interference of firewalls and proxies while delivering excellent real-time client-server interactivity. This sort of technology is nowadays sometimes referred to as Comet. Developed a highly scalable server architecture which can support thousands of concurrent user sessions on a mid-range server machine and, potentially, hundreds of thousands to millions of concurrent users in a modest server farm.
Communities.com (formerly Electric Communities), Cupertino, California
1995-2001: Chief Scientist and Board Member
Lead architect of communications protocols and object technologies to facilitate effective commercial and social interaction over computer networks. Developed advanced infrastructure technology for a highly secure, distributed, extensible object system to support commerce and virtual world applications. (As the result of a shift in company business strategy, important parts of this technology were released as open source software, principally in the form of the secure distributed capability programming language E. See http://www.erights.org.)
Undertook engineering overhaul of acquired technologies, including the leading Internet graphical chat system (The Palace), significantly improving product flexibility and reliability (for example, increasing server MTBF from a few hours to several months). Produced second generation server as part of a small team which significantly upgraded the company's technology, yielding significant technology licensing revenues even while CEO was bankrupting company trying to create a media portal.
Electric Communities, Palo Alto, California
Partner in three-person consulting group that advised various high-tech companies on matters relating to networked virtual environments, electronic commerce, and social software. Wrote business plan for and, in collaboration with the other partners, oversaw the technical and creative development of client Fujitsu's WorldsAway service.
American Information Exchange Corporation, Palo Alto, California
1988-1993: Vice President, Software Development
Head of software development for the AMiX server and client software, implementing the world's first (pre-Internet) online information marketplace. Responsible for product internal architecture, including database, communications protocols, and user interface framework. Direct supervisor of all development staff and systems administration personnel.
Lucasfilm Ltd, San Rafael,
1988-1992: Cyberspace Consultant
Advisor to Lucasfilm and its licensees (principally Fujitsu Ltd.) on matters relating to Habitat and similar systems. Conducted technology transfer associated with license. Oversaw licensee development efforts and license compliance. Responsible for final approval of licensee product release.
Project Leader for Lucasfilm's Habitat, the first large scale, many-user graphical online virtual environment. Responsible for both technical and creative design. Directly supervised all development staff, including programmers, artists, sound designer, writer. Wrote substantial portions of Habitat server system, including creation of innovative distributed object model.
Software toolsmith for the Lucasfilm games division. Created, among other things, MACROSS, the universe's second most powerful 6502 macro assembler.
XOC, Inc., Ann Arbor, Michigan and Menlo Park, California
1981-1984: Executive Vice President
Second in command of group attempting a company to develop and market the Xanadu Hypertext System. Wrote substantial pieces of the company's first business plan, hunted for funding, and helped keep a team of top-caliber but unpaid technical people together for several years. Evangelized the possibilities inherent in hypertext to numerous large organizations in the years before the Web made hypertext a household word.
ERIM, Ann Arbor, Michigan
1979-1983: Research Engineer
Developed image processing software, languages and related tools for the Cytocomputer®, a high-speed, pipelined cellular array image processor which my group at ERIM invented. Applications included industrial machine vision and military target recognition. Co-inventor of the obscure but useful Leonard-Morningstar image filter algorithm.
Independent computer consultant, southeastern Michigan
Advised law firms and accountants about minicomputers prior to the PC revolution. Principal advice was "don't buy anything from IBM". Well paid for this advice, which in those days saved clients tens of thousands of dollars.
Space Physics Research Laboratory,
The University of Michigan
1977-1981: Research Programmer
Wrote device drivers, CAD software for electronic circuitry, real-time data acquisition and display software for sounding rocket and balloon instruments.
Kay's Silver Lake Resort,
Silver Lake, California
1974-1976: Store Manager
Ran the grocery store at a small Sierra Nevada mountain resort. Not terribly relevant to my technical specialty but the source of much professional perspective and many great stories.
B.S.Comp.Eng., 1981, The University of Michigan
High school dropout, 1977, Amador County H.S., Sutter Creek, CA
Noteworthy Publications (open literature)
"Capability-based Financial Instruments" (co-authored with Mark S. Miller and Bill Frantz), proceedings of Financial Cryptography 2000. A slightly revised version of this paper is available on the web at http://www.erights.org/elib/capability/ode/ode-linear.html.
"Distributé, Securité, Communauté: Three Cyberspace Principles" (co-authored with F. Randall Farmer and Douglas Crockford), in Alan Wexelblat (ed.), Virtual Reality II, MIT Press, 1994.
"The Lessons of Lucasfilm's Habitat" (co-authored with F. Randall Farmer), in Michael Benedikt (ed.), Cyberspace: First Steps, MIT Press, 1991. An HTML version of this paper is available at http://www.fudco.com/chip/lessons.html.
"Cyberspace Colonies" (co-authored with F. Randall Farmer), proceedings of The Second International Conference On Cyberspace, 1991
"Settlements On The Electronic Frontier", proceedings of IEEE CompCon, 1991.
"On The Nature of Space And Stuff" (co-authored with G.C. Morningstar), Worm Runner's Digest, 1978.
Future technology, model (and real) railroads, movies, science fiction, economics, philosophy of science, evolutionary epistemology, artificial intelligence, reverse engineering, bicycling, hiking, and photography.
References Upon Request