. @timheuer asked for a thread of 36 tweets, one for each year. Lets see if I can remember enough of the past 36 years to make this happen. Note that the dates here may be a bit fuzzy - take any year as advisory only - it's mostly accurate but not completely.
1984: Graduated from college, started at MSFT - working on multitasking MS-DOS 4.0, which later became OS/2.
1985: Over the summer, my girlfriend worked as an intern working on (among other things, this new thing called "Windows").
1986: MS-DOS 4 forked into OS/2, but other customers were left behind who needed support. One of those was Goupil in France, so while the rest of MSFT was shut down moving to a new campus, a co-worker and I traveled to Paris for a weekend to fix bugs for Goupil.
1987: Valorie (GF in 1995 tweet) and I got married. 36 hours after our honeymoon ended, I was on a plane to England to deal with some problems in MS-DOS 4.1 which was built for ICL in Bracknell, UK.
1988: MS-DOS 4.1 shipped and I moved to the Lan Manager team, working first on MS-NET 1.01 and then the MS-DOS version of Lan Manager. @dglasser gave me the nickname of DOS Vader.
1989: Worked on Lan Manager 2 - managed to reduce the low memory footprint of the client networking code to 128 bytes.
1990: Moved to the NT OS/2 team who were working on a 32 bit version of OS/2. I was to write the network filesystem for NT OS/2. The plan was to ship in a year, so it was crunch time.
1991: NT OS/2 becomes Windows NT. We're going to ship in 6 months.
1992: @ostermad was born. I turned 30. We're still going to ship Windows NT in 6 months. Started working on the much maligned NT Browser (bowser.sys). Family took a huge vacation back east for 6 weeks and I had to come back to Redmond for 1 week because of a crisis.
1993: The browser is a mess because I really didn't understand how to do distributed multi-mastered programming. My manager schedules a daily 8AM meeting to talk about the status of the browser. Windows NT is going to ship in 6 months, so it's crunch time.
1994: Ten years at Microsoft! We shipped Windows NT 3.1!
I left the NT team to work in a Microsoft Research adjacent team. I got massively dinged on my review because (among other things) I took a week off when my daughter Sharron was born (it was a different world back then).
I left the NT team to work in a Microsoft Research adjacent team. I got massively dinged on my review because (among other things) I took a week off when my daughter Sharron was born (it was a different world back then).
1995: Moved from the Research team to Microsoft Exchange. My first task was building "push notifications", which became my second ever patent (along with the current VP of my division - go figure that one :)).
1996: Continued working on the MS-DOS client for Exchange.
1997: Started working on a POP3 client for Exchange along with Mark Novak. Started participating in IETF meetings.
1998: Shipped the IMAP4 server for Exchange.
1999: Started working on some of the internals of the Exchange store, restructuring the security model from using a home grown model to use native Win32 ACLs.
2000: Shipped Exchange 2000. Left Exchange to work on an embedded controller for home automation with the team which built the home automation for Bill Gates house.
2001: Nisqually earthquake. My back spasmed so bad I was out of work for 6 weeks.
2002: The home automation project was terminated and Dennis Flanagan (OBM) asked me to move to the Sound team in Windows Longhorn.
2003: Started working on per-app volume for Windows Longhorn. Windows XP Security stand-down where we had mandatory security training by @michael_howard.
2004: 20 years at MIcrosoft! Longhorn Reset happens. We throw away the entire Windows audio stack and recreate it for Windows Vista.
2005: Continued to work on Windows audio stack. Started blogging.
2006: Shipped Windows Vista. And customers were not amused :(.
2007: Started working on WIndows 7. What a difference. Started working on "Automatic volume attenuation", or "ducking".
2008: Gave my first (and as yet only) convention talk at PDC 2008 on the Ducking feature. Worked with others to create the threat models for every feature delivered by the multimedia team in Windows. Promoted to Principal SDE.
2009: Shipped Windows 7. Started looking around for something new to tackle. Joined the "Windows Runtime" team working on figuring out a new application model for windows apps.
2010: Started working on a fork of the MIDL compiler for Windows Runtime APIs, defining the windows runtime metadata format. @ostermad graduates from High School.
2011: Continued working on the MIDLRT compiler adding new features.
2012: Shipped Windows 8. Started working on figuring how how to build one API surface for both Phone and Windows.
2013: Shipped Windows 8.1 which had tooling for Windows Phone. Started working on Windows 10
2014: Worked on the API Contracts concept with @BrentRector. Thirty years at Microsoft!!!
2015: Shipped Windows 10. Continued working on MIDLRT.
2016: Worked on the Metadata Based Marshaling feature, the incredibly useful feature nobody knows about but which "just works". Attended my first @barbershopnews convention.
2017: Nothing huge work-wise, 30th wedding anniversary, youngest daughter graduated college.
2018: Started design of and implementation of MIDL3 language for WinRT API authoring. Eventually took over as the lead for the COM team. Interviewed with Azure about moving to Azure Core Security.
2019: Moved to Azure Core Security working on the Microsoft Azure Attestation service. 35 years at Microsoft!!!
2020: Continued working on MAA. And that's up to date.