Wednesday, March 9, 2011

Why I will leave Microsoft eventually

I have mentioned in the comment on previous post that I am going to leave Microsoft eventually. Maybe somebody would be interested in reasons why...

Main reason is that I am bored to death in Microsoft. I was industry hire and I always worked in tiny, privately-held software companies, then made the jump to the biggest software company in the world. Quite a change :) Despite the size, those were not what you would call 'startups'. They were not seeking investors, they were established for a while and had customer base. It is just that owners considered that they have enough as it is...

For those who never worked in that setting, it is very different than typical Microsoft product group. Given small company size, you are forced to wear many hats. In one of the companies, my typical work week would start with a customer-site visit (in same town), which included requirement gathering, interviewing end users, talking with stakeholders... Back in the office, next day, I would translate my notes into functional decomposition diagrams, data-flow diagrams, database schema updates, down to the list of work items for a week. Then, team and I would divide work items among us and start working on implementation. We would test among ourselves, review and generally work together to achieve incremental improvement by end of the week. On Friday (or next Monday) I would go back to the customer and, while chatting with our customers, deploy new version of the software to test environment, import production data into it and return home with great sense of accomplishment.

So, I miss that a lot... This is something you cannot accomplish in Microsoft. I have growing feeling that I am wasting my skills here -- I know I can do a lot more, but there is no way that I can get into position where I can show my strengths. I am an SDE and I just see that PMs feel threatened when I try to talk design. Testers do not like when I show them how to do their job. UX designers are holding their 'I went to design school' card high and take great offence if you suggest improvements to their mockups.

Another reason is that I really do not see that current leadership has any clue how to fix this company. There is no vision and there is no direction. Everyone is afraid of making decisions and everybody wants to postpone them or push them to others. Trio system is designed to fix the problem where incompetent PUM takes down whole product by distributing responsibility among three peers, hoping that if one is a dud, two others will carry the product to the completion. However, at same time, it also eliminated strong PUMs, which  were capable of pushing the vision forward.

As a final word, I would like to thank Lisa and Steve for killing our health care coverage PPO and removing my golden handcuffs... I am really free now, as Microsoft will offer nothing better than any other company in the industry.