Skip to content


Who I am is perhaps best described by what I’ve built.

2012 – 2015    Talko
Founded and led a company that delivered mobile apps & services for business team communications, primarily focused on those roles in which voice is essential. Co-founders were Eric Patey (dev) and Matt Pope (product). Talko was purchased by Microsoft in December of 2015 so as to fuel innovation in Skype for consumers and for business.

2005 – 2010    Microsoft
Assumed the CSA (chief software architect) role in June 2006, when chairman/CSA Bill Gates announced his intent to relinquish the role on the transition from Microsoft to working full-time at his foundation. In his activities as CSA Ozzie was responsible for oversight of the company’s overall technical strategy and product architecture, and for driving its transition to services and the cloud. Within his advanced development labs he was also charged with creating and nurturing potentially-disruptive advanced development efforts, including one (“Red Dog”) led by Dave Cutler and Amitabh Srivastava that grew to become Microsoft’s Azure.

1997 – 2005    Groove Networks
After coming to the conclusion that server-based architectures (Web, Notes) fundamentally would not adequately address the dynamic collaboration requirements of a decentralized business environment, founded Groove Networks to create personally-empowering, secure, mobile, ad hoc, decentralized collaboration software for both individuals and enterprises. Co-founders Ken Moore, Jack Ozzie, and Eric Patey  led the development organization; my part was largely in conceptualization and design, and in leading and helping to build the rest of the business.  Groove Networks was purchased by Microsoft in April of 2005.

1984 – 1997    Iris Associates
Founded and led Iris Associates, to create what has become Lotus Notes, the defining enterprise “groupware” and email product used by more than 120 million people at corporations worldwide for collaboration within large enterprises. Iris, a software design & development firm that is now part of the IBM/Lotus Software Group, was co-founded by Tim Halvorsen and Len Kawell, and was purchased by Lotus Development in 1994, and by IBM in 1995.

1983 – 1984    Lotus Development
Hired by Mitch Kapor and Jonathan Sachs at Lotus Development, just after Lotus 1-2-3 Release 1 had shipped. Did a small amount of work on 1-2-3 1A, and led a small team (Barry Spencer, Matt Stern) to create Lotus Symphony (8086 assembly) – one of the first “suite” products originally intended to be the second major release of Lotus 1-2-3.

1982    Fund-Raising
Haunted by concepts rooted in collaboration and online community that I had experienced at PLATO, inspired by reading Ted Nelson (this and this) and Doug Englebart, and believing that the world would be fully embracing PC’s and networks by 1983 because of using a pre-release IBM PC and 3Com Ethernet card while at Software Arts, developed functional specifications and plans for the product that would later be known as Lotus Notes, with the intent of starting a software company to build it. Failed to obtain funding.

1981 – 1982    Software Arts
Hired by Dan Bricklin and Bob Frankston at Software Arts, creator of VisiCalc. Did a small amount of work on the Z80 port of VisiCalc (under development lead Seth Steinberg), and later led the team that built the VM (Z80, 6502, 8086, PDP-11, 68000  assembly) for a Lisp-like language (“IL”) being built to ensure the cross-machine portability of VisiCalc and TK!Solver.

1981    Fund-Raising
With three people from Digital Equipment Corporation, co-founded a startup, “Microcosm Corporation”, to create a workstation product based on National‘s VAX-like 16032 microprocessor. Failed to obtain funding.

1979 – 1981    Data General
Data General, hired by Jonathan Sachs to write the workstation OS for an early LAN-based operating environment a.k.a. “Not Much” (NOVA assembly), consisting of MicroNOVA intelligent workstations, Eclipse file and print servers, and a token-passing bus LAN. Project led by Jon; the other member of core development team was Scott Norin.

1978 – 1979    Urbana Software Enterprises
Co-founded Urbana Software Enterprises and co-implemented VM (Z80) for a standalone computer system intended to be a commercial micro-sized personal version of the PLATO teaching environment. Founder was Paul Tenczar; co-founder was Ron Klass. Company later became TenCORE, and was ultimately acquired by Computer Teaching Corporation.

1975 – 1979    University of Illinois PLATO
While programming coursework on an IBM 360/75 as a computer science student, I was fortunate to have also been hired as a systems programmer on the seminal University of Illinois PLATO project, thanks to Paul Tenczar and Don Bitzer. Implemented (CDC 6600 and Z80 assembly) an assembler, dynamic linker/loader and firmware for an early “intelligent terminal” for PLATO system, enabling decentralized computing for an otherwise centralized interpreted language execution environment. One of tens of thousands of people who became fully immersed in the world’s first “online community” and all that that implies. Was exposed to eMail and online discussions (a.k.a. “Notes”), instant messaging, chat rooms, massive multiplayer gaming, online project collaboration.

1974    University of Illinois Nuclear Engineering
Technician at Dept of Nuclear Engineering, University of Illinois. Implemented (Lockheed SUE, Intel 4004 and 8080 assembly) custom measurement & control devices and support for TRIGA reactor experiments.

1974    Vapor Corporation
Technician in engineering labs of Vapor Corporation, at the timen Illinois manufacturer of myriad systems and devices serving the transportation industry. Worked on early locomotive telemetric data logging & dead man control devices.

1972 – 1973    Protection Mutual
Systems programmer at Protection Mutual Insurance Company. Implemented (IBM System/3 RPG, Microdata REALITY microcode) decentralized batch execution environment.

1969 – 1970    Maine Township High School South
Learned to program first on an Olivetti-Underwood Programma 101, and then using an ASR-33 dialed into Tymshare to program a GE 400 in Fortran & Basic).