This week I turned 10 in Microsoft years which according to MS tradition means that you need to bring in 10 lbs of M&Ms to the office to treat your co-workers with as they stop by and reminisce about the past 10 years :) We don’t really have M&Ms in the stores in Sweden so I had to substitute for my favorite Swedish candy instead.
10 years is quite some time, but it feels even longer in our business when you think about how much happens with technology in 10 years.
When I first started at MS I got assigned to the VI (Visual InterDev) support team. I can already picture your eyes rolling a little bit when thinking about VI:)
Back in those days things were a little bit less complex, and my first support call was from
a guy who got a download dialog when viewing an asp page because he viewed it straight from disk rather than browsing through IIS, he was definitely not the first or the last with that issue:)
I still cringe a little bit when I think about the DTC controls and 80020009 Exception occurred. For a while pretty much every call I got went something like this
- Microsoft Support, this is Tess speaking
- Hi, I have an issue with my ASP application. When I use the DTC grid control I get 80020009 and no data is returned.
- Ok, that’s because your IUSR_<MACHINENAME> doesn’t have write access to the folder where you store your access db so that it can write to the lock file
- Thanks, bye
Compare that to my standard issues today (we have a web farm with 8 nodes and once a week we have an problem on one of the nodes causing the response times to be way higher than normal):)
We had a really awesome team of people working in the VI/ASP support team and we all had specialties that we dug deeper into. Mine was debugging (not windbg, but VI debugging:) ouch…). And not even debugging, but setting up the debugger, double ouch…
If you haven’t had to configure it yourself you probably wonder why someone had to specialize in that:) have a browse through this and you’ll understand:)
After a while as a support engineer in the ASP team I became a TechLead (TL) which I quickly renamed to Technical Router and Librarian:)
The ASP.NET Launch and the start of my interest in debugging
When ASP.NET and .NET was announced it was really exciting and things started changing a lot. I have to admit that when I first heard of the .NET framework I thought to myself. Yeah, it’ll be good in the server world, but how will they ever get normal users to download the whole .net framework just to run some win forms app? In retrospect that thought is comparable to “I think there is a world market for about 5 computers”:)
One of the defining moments in my career was in the Alpha stage of ASP.NET when a colleague from another team (one of the guys behind adplus) came up to me and said, I think we should make some videos about debugging .net with windbg. I had pretty much never heard of windbg so my response was pretty much “debugging the what with the who???”. But we sat down, set up some scenarios, he took me through the basics of debugging with windbg and we were off.
Back then we didn’t have all the fancy commands we have now though. There was only about 5 commands in strike (the predecessor of sos), !dumpobj, !tst (dump a true stack trace), !dumpheap with one or two switches, and maybe one or two more commands. Nice:)
I remember, one of my other colleagues devoted his life to documenting the asp.net framework and every single method that would be called during a requests lifecycle. He had 8m rolls of paper stuck in his cube with small text documenting everything:) We stayed up late at night writing whitepapers and training material about everything you could think of relating to asp.net. Now, that’s what I call preparing yourself for a launch:)
After this we started up the ASP.NET escalation team so I moved there, debugging production issues, and after a while I moved into a group called SIE (Solution Integration Engineering) working with debugging all sorts of .net issues, both for external customers and our internal development teams. Finally I decided to move back to Sweden and join the EMEA ASP.NET escalation team and that is pretty much where I am at today. I had already worked a lot with Doug the EMEA escalation team so we knew each other, and each others backgrounds pretty well. We did have a formal interview but I think the most important question from my fellow EEs went something like “which beer do you prefer? Newcastle or Bud?”:).
10 years in numbers
It’s hard to summarize 10 years on one page, but when I started thinking about it here it is (in no specific order)
- 4 versions of Visual Studio
- 10 operating systems (not counting mobile OS)
- ~2000 support cases
- 2 countries, 5 different homes
- 6 job titles
- 15+ managers
- 1 wedding and 1 child
- a gizillion cups of coffee and an incredible amount of M&Ms
- another gizillion games of 8-ball and 9-ball
- 5 Zunes (don’t ask me why:))
- 3 XBoxes (standing in line outside CompUSA on launch day to get the first one)
- an uncountable number of dump reviews:)
- 180 blog posts
- 1 TechEd presentation and numerous presentations at other conferences
So 10 years:) wow, all in all I think these have definitely been the best 10 years of my life thanks to all the great people I have gotten to work with, both my colleagues and all the developers/customers I get to speak to every day. I sincerely hope I get to celebrate 20 years at MS in 10 more years.