Friday, January 05, 2007

New Job Part 2

So another common question people ask me is how I got a job at Microsoft. This is a completely valid question as I have no experience with any of their products. I program in Java and J2EE, I use Eclipse and NetBeans as my dev environment, I run Linux primarily and also Solaris as my operating systems, I use Thunderbird and Firefox, I contribute to opensource projects, I have an Ipod and a Wii (not really), and I've been getting anti-Microsoft propoganda from Scott McNealy for the last 10 years of my career. So why then am I going to work at Microsoft and why then would Microsoft be at all interested in hiring me in the first place?

I'll start with why I took this job. For me one of the most important things in my job, the thing that I get a lot of job satisfaction from, is the ability to be constantly learning. I also really enjoy being challenged to the point where I feel "in over my head". This new job provides me with huge opportunities on both of these fronts. I will be learning a new product as well as a complete new technology stack. And the challenges that are ahead of me seem certain to stretch me in a whole host of new directions. In addition to this, I really just needed a change. My job at Sun was looking like more of the same thing that we have been doing, with little to no clear direction, and no clear idea of the business value that our work would provide as well as not having much more than a plan 2 months out. The group I am going to may not be perfect but they seem to understand their value and their long term plans for what is being developed. That excites me a lot about the potential. I was offered another job internally at Sun, but just felt like it was not really a change as I would be working on so many of the things that I have been in the past. Much of what I do at Sun revolves around service based applications, whereas at Microsoft I will be getting back into product development. This is a whole and complete change for me.

But why would Microsoft be interested in someone who doesn't know their technology at all? Well that was exactly my question to everyone I interviewed with, starting with the recruiter who found my resume on some job board (Dice or LinkedIn I think, I never did apply to Microsoft directly). The answer I kept getting back is that they were very interested in my experience architecting and designing platform layer frameworks that were highly reusable, and also they were interested in my strong background in architecture as it pertained to building systemic qualities into the products. They then said that the technology was easy to learn and a good designer/architect would pick that up quickly. I guess that was a good enough answer for me, because I enjoy the architecture and design pieces of my job the most, and actually think I am relatively good at them. I also agree that picking up a new programming language and some underlying technology is relatively easy. Especially in going from Java to C# which are pretty similar languages.

All in all, I think that this job is a good fit for me. I spent a lot of time interviewing over the past year looking for the perfect job. I turned a number of things down because they just didn't seem to be a fit for where I wanted to take my career. So although this is a completely new world to me, I feel like it is probably the best possible fit for me at this point in my career and offers me the highest potential growth personally and professionally.

No comments: