Principal Software Lead at Microsoft
Greater Seattle Area
Principal Software Lead at Microsoft
Greater Seattle Area
Client Software Development, Management, and Team Leadership.
My software products have been C++/C world-class consumer, business, and research software clients. I have a deep passion towards User Interface Design and Usability. I’m a manager working on the Windows Live Photo Gallery development team, and I’m having a blast being part of a new generation of consumer-focused rich clients connected to more and more online services. Also, Windows Live is growing into a rich suite of applications that work exceptionally well together. This is great stuff and it’s amazing to see the compound-goodness as the clients become more and more connected. I look forward to continued development in consumer-facing products.
In addition to Windows Live Photo Gallery, I’ve worked on Microsoft Office InfoPath (2003, 2003 SP1, and 2007) and the larger product that InfoPath was derived from, NetDocs, where I learned a great deal about good technologies like DHTML, XML, XSLT, COM, ATL, JScript, and IE’s engine (Trident). Before Microsoft I worked at Intel Supercomputers on software tools for research scientists (mainly the graphical parallel debugger, XIPD - written in C++ for the X Windows System). Before Intel I worked for a small consulting company called EPOS, mainly on the software system supporting their plastics injection monitoring products.
Team skills: project management, people management, team leadership.
Technical skills: C++, C, COM, ATL, Win32, DHTML, XML, XSLT, JavaScript, AJAX / XMLHttpRequest, VBScript, Debugging, Perl.
(Public Company; 10,001 or more employees; MSFT; Computer Software industry)
November 1997 — Present (12 years 1 month)
I work in Windows Live on the Windows Live Photo Gallery team. It matches a passion of mine to hook up the power of client software running on a desktop with web services. In addition to publishing to Live Spaces, we also publish photos to flickr.
Before Windows Live I worked in the Office group, specifically on the InfoPath form editing application. This was derived from a larger initiative called NetDocs, the group I started with when I joined Microsoft.
My focus in on C++-based client applications that connect with services (typically SOAP based web services, though I'm more enamored with REST post thanks to XSD). The C++ clients that I've worked on rely on COM for their interfaces (or have light hierarchies) and ATL. Also, XML and XSLT (I worked on about the earliest version of XSL there was).
(Public Company; 10,001 or more employees; INTC; Semiconductors industry)
June 1992 — October 1997 (5 years 5 months)
I worked in Intel's Supercomputer Systems Division (SSD, later renamed Server Systems Division) on the programmer's toolset, specifically on the graphical debugger XIPD, both for the Paragon and the Intel TFlops machine. This was an X Windows System based application that, in its final iteration, compiled for both the TFlops machine (to run remotely) and a Sun workstation (connecting to a debugging engine through hand-crafted RPCs).
I also worked on some of the various profiling tools, in addition to writing a Perl script to attempt post-mortem analysis of partially crashed systems. While at Intel in 1993 I discovered the World Wide Web and helped with the initial Intel presence on the web (and, in those days before firewalls, setup matrix.ssd.intel.com as an early web server).
(Computer Software industry)
1989 — 1992 (3 years )
(Privately Held; 51-200 employees; Computer Software industry)
June 1987 — August 1989 (2 years 3 months)
Software client development at EPOS in C on the QNX operating system (after doing some DOS PC-based contract work). I worked on the EPOS plastics injection monitoring system, primarily on the user interface library (kind of object oriented via a bunch of function pointers). I learned a great deal quickly going out into the field for Ethyl Corporation and installing systems in a variety of places (usually, I was the software guy configuring the plant's setup, though I did drill into a machine or two for mounting transducers).
Masters Computer Science , Computer Science, Engineering , 1989 — 1992
My first degree was a B. of Computer Engineering from Auburn (1983-1987). I worked for two years for a local company (EPOS Corporation) before going back for my Masters in Computer Science. My major professor was Dr. Cherri M. Pancake; my studies focused on User Interface design and implementation. For my thesis, I designed a language to express a platform independent user interface (that produced wild C++ multiple inheritance output for joining design with platform implementation).
Bachelor Computer Engineering , Computer Science, Engineering , 1983 — 1987
The Pacific Northwest, Beautiful Hikes, Simple Movies, Well Behaved C++, Presentation Zen, Quiet Photography, Downtown Portland, Useful Web Services. And Coffee. Very, very strong coffee.