Leaving Microsoft

Posted by Howard on Thursday, August 14, 2014

After 8 amazing years, it’s time for me to move on. I’ll articulate my own rationale for leaving shortly, but it would be disingenuous to not first list some of the many, many ways that I have grown and benefited from my time working at Microsoft.

  • I got to run the developer certification program where I designed and built programs that helped start and grow the careers of many. It was also in this role that I had the opportunity to file my first patent.
  • I ran MSDN Magazine, which is to date the best job I’ve ever had. I owned the business goals, the content strategy, the relationships with authors, readers, and our publisher. I got to travel to New York quite a bit and had a whole set of amazing experiences like learning the subway system from none other than Charles Petzold!
  • I worked on the MSDN Web platform team, where I got hands-on experience with the pain points and strategies for running a large scale Web application.
  • I worked on Web API (back when it was still a part of WCF) and got to become a part of the REST and API communities. It was because of this role that I also got to publish my first Pluralsight course on REST as well as contribute to a book on Web API with some fantastic folks.
  • I got to bring Project Katana, which became one of the core inspirations for ASP.NET vNext, into existence.
  • I got to work on NuGet, one of the most (arguably the most) succesful Microsoft open-source projects, and was able to use my experience with REST to help drive the new API v3 architecture.

There are probably a million other things that I’m simply not remembering that were also awesome - after all, there’s a lot that one forgets in 8 years, but all of these experiences shaped and built me into the person I am today - and I’m forever grateful.

Additionally, one of the greatest strengths of Microsoft has always been and continues to be the people that work here. I have many close friends and professional mentors that I’ve developed during my time here. And in fact, even when I knew that it was probably time to move on from a professional perspective, it was the people that I get to work for and with here that kept me. Like experiences, the number of people who have made an impact on me are too many to enumerate completely. However, a few that come to the top of my mind when I think back are Scott Hunter, Jeff Handley, Glenn Block, Keith Loeber, Al Valvano, Lucinda Rowley, Vishal Joshi, Matt Carter, Steve Butler, John Taylor, Jon Gallant, Ada Cole, Jeremy Kelley, Shy Cohen, Scott Hanselman - you have all been great friends and great mentors, and I expect that we will keep in touch.

So with all this gooey greatness, why leave?

Being a PM at Microsoft gave me tons of experiences in areas such as working across different groups, designing features, driving schedules, public speaking, etc. However, I continued to miss my dev days and wanted to grow more in that direction.

What does growth look like?

For me there are 2 dimensions for growth. The first dimension is the set of professional experiences that I want to be collecting. I have a good friend who painted the picture of one’s career as a normal distribution. He said that you spend the front half of your career collecting experiences and the back half monetizing those experiences. And while I think that one should be collecting experiences throughout his/her entire career, I also think that this illustration is really helpful in that it forces the questions: what are my professional values, what are the experiences that I want to be collecting that align to those values, and am I collecting those experiences at the rate that I want?

It took me a long time to get crisp on my values, but I finally boiled it down to 2 things - I want to build teams and build products.

Having nailed down those 2 things, I moved on to the next questions: what are the experiences that I want to collect that map to these values, and what is the rate at which I’m collecting those experiences. Thinking through these, I came to 2 conclusions:

  • To feel connected to the way that I look at “building products” I need to move from PM [back] to dev
  • I could collect the kinds of experiences that I wanted while at Microsoft, but not at the rate that was possible outside of Microsoft

The second dimension of growth for me is technology. Those of you who know me know that I’m pretty passionate about software development and historically, all of that energy had been channeled into one specific part of the software development landscape: the world of Microsoft’s technology stack. A little over a year ago, I developed a curiosity to learn about some technologies that were not a part of the canon - specifically, Neo4j and Nodejs. I knew then that I wouldn’t really be able to explore these as a part of my day job and I knew that these technologies were more optimized for Unix systems (something I have also had an interest in for a while), so I went out and bought a MacBook Pro and started learning those along with the fundamentals of bash scripting, the Unix process model, etc. The more I learned, the more my curiosity grew. On top of that, I concluded something else - that much of what we are trying to do with respect to cloud architecture is essentially just the next evolution (or application perhaps) of the same Unix process model and philosophy that has been around for decades. I want to be in the middle of all that is happening in the world of cloud computing, and I think that being a consumer of lots of different technologies (both Microsoft and non-Microsoft) will enable to me to grow technically in a balanced way.

So again, at the end of the day, I concluded that I could gain experiences that aligned to my core values while at Microsoft - but that it would take longer than I wanted to wait. It then came down to the question of what was keeping me at Microsoft. The answer was two-fold: the people (a great reason) and the fact that Microsoft felt safe and comfortable - this is not necessarily a bad thing by itself, but for me revealed that I was letting myself be motivated by fear rather than by passion.

I always want to drive from a place of curiosity and passion - and for this next season, this needs to happen outside of Microsoft.

So where to?

I’ll hold off on naming the company for a bit longer, but I will say that I’m getting to build a dev team within a mid-sized SaaS company. Fortunately, the transition will not require a move, so I’ll still be in the Seattle area for the foreseeable future. I’m also hoping that I’ll still be able to attend and speak at events, so if you want for me to come and speak at an event, please continue to reach out.

Bye for now

As I mentioned earlier, Microsoft’s greatest strength has always been its people - and for those colleagues reading this, I cherish getting to work with you and will greatly miss that. However, very few things in life are permanent (except for maybe tatoos) and I hope that our paths will cross again at some point in the future. I’ll be around for a few more weeks, so it’s not quite goodbye just yet.

For those reading this who I haven’t yet had the chance to work with, I’m hiring devs, so feel free to reach out if you want to learn more :)