Thursday, April 20, 2006

more about work at microsoft

this article about working at microsoft was a top story on slashdot yesterday. it was written by Michael Brundage, who works as a dev for the Xbox team. in general, I agree with Brundage. however, I think that he should acknowledge that his experience is atypical - even within the company itself.

note: I also posted about working at ms last year.

Brundage divided his article into a number of sections and assigned each a rank of good, bad or in-between.

Focus (good)
in this section, Brundage talks about the benefits of working as a software engineer at a software company. I don't think that Brundage is offering much of a complement here. I would expect people at a software company to be more interested in software than employees of some other industry. however, I would also add that - unlike some 'tech' companies - ms is a 'real' tech company. at ms, they practice what they preach. pretty much everything at ms has been put online as uses up-to-date technology. another example is that ms also forces beta versions on its employees. before a new version of windows or office ships, ten of thousands of ms employees have been running the software for months.

Unreality (in-between)
I have to agree with Brundage on this point: "Some employees forget that most of the world doesn't have broadband wireless networking, high-end consumer electronics, luxury vehicles, and enough money that they don't need to live on a budget. Some employees spend so much time using Microsoft products, that they forget about the competition and/or lose touch with typical customers' needs." one common example that I would always throw out during ms conversations was south africa (where I was born and most of my family lives); in SA, broadband is rare. ms needs to pay more attention to customers. a bug fix or a feature tweak is often more important to a customer than a new feature, but few devs at ms want to work on existing code. the 'code-on-code' mindset is horrible for the customer.

Personal Freedom (good)
yes, it's true that ms offers its software devs a truckload of freedom and benefits, but this isn't the case for a large portion of ms employees. many ms people have to work set hours, don't get their own office and have to account for their time (sometimes down to 15-min intervals). people on the redmond campus don't generally appreciate how lucky they are. for example, when I first moved to the redmond campus, they were still offering friday massage sessions. that benefit (and many others) have gone away, but the inequality between redmond/red west and other campuses is still obvious.

Company Leadership (good)
I think that this is one of the points where there is a large gap between the experience of the microsoft employees and those who rely upon news and rumours for their opinions. I also have had positive experiences with ms execs, but this isn't the general impression that makes its way outside of the company. despite his extensive work with the bill and melinda gates foundation, gates still raises the ire of a large portion of people - especially the zealots of the 'anything-but-microsoft' religion. ballmer doesn't fare much better. how many times will the media report that he threw a chair and vowed to 'kill google.' the leadership at ms is carrying a lot of baggage and it may be best to let some new blood take over.

Managers (bad)
"Microsoft also suffers from a phenomenon that I've seen at other companies. I describe this as the "personality cult," wherein one mid-level manager accumulates a handful of loyal "fans" and moves with them from project to project." I don't feel that the criticism in this section is unique to ms. everywhere I've worked, I've come across issues with managers. the issue is that there really isn't a system of '360 degree performance.' lower-ranking employees are powerless to do anything about a crappy manager. there is a highly-structured performance review at ms, but as Brundage writes, it only works for individual contributions - not management skills. it's almost as if there needs to be a 'manager audit' where someone completely removed from the team (read: its politics) goes around and assesses the performance of the managers. managers who score poorly should be demoted.

Source Code (good)
this is sort of a silly point. at ms, you get access to what you need. since Brundage has worked on various teams, he has had access to various source trees. if he wasn't a dev, or a 'CPR' support engineer, he wouldn't have access.

Benefits/Compensation (in-between)
I agree with Brundage on this point, new employees are probably enjoying the above-average benefits at ms. however, those who have been around for a few years have seen their benefits steadily decrease.

Work/Life Balance (bad)
I agree that work/life balance is an issue at ms and it was one of the points in my fist post about working at ms. before I started at ms, I expected there to be a huge setup for company sports teams and the like - after all, they do have their own fields. but this is not the case at all. people work long hours and many people take pride in the fact that they don't do anything else.

Microsoft's (sic) Not Evil (good)
I agree with what Brundage is saying here. people outside the company don't appreciate that the microsoft of today is usually ethical. when mistakes are made, it's usually because of the same reason as any other company: someone was incompetent. however, Brundage should acknowledge that microsoft's issues with this perception stem from its own actions. ms has been convicted of various infractions and therefore is partly to blame for the ill will that still exists.

having said that, ms is a 300 pound gorilla (to use a common ms expression) and the gorilla likes to throw its weight around. ms may not be breaking the law anymore, but it's obvious that it can have its way with many companies. but one could argue that this isn't evil, it's business and any other company would do the same thing.

Influence (good)
I understand what Brundage is saying here, and I have commented about it in the past. but, again, Brundage only has this viewpoint because he is amongst a small group of people at ms that have the opportunity to work on cutting edge stuff. the vast majority of employees at ms don't have the same experience.


Anonymous said...

Hello Steve,

I really enjoyed reading this.

When people ask me what it was like to work at MS, I quickly run short of ideas, so this will certainly turn out useful, even though Product Support in Issaquah is way different than developping in Redmond.

What I usually say is that I got to collaborate with the famous guy who co-wrote Microsoft Content Management Server 2002: A Complete Guide book or I mention the awesome company store where you could get XBOX games for 10 bucks. However I think that there are risks of being somehow brainwashed if you don't pay attention: for example, what really struck me at the time was the "Friends dont let friends use AOL" posters displayed in the corridors.

I also worked in Microsoft France at Les Ulis, and I have to say that alhtough the workload was less intense (Once I got removed of the building at 8h30 pm by Security, because they didn't expect me to work so late), I found the middle management to be more human.

Good luck with your writer's career and cheers to the ex-NCompass Labs crowd.

Stephen Cawood said...

thanks for the message jonban. I hope that you're doing well.

I like your story about being kicked out of the office for working too late. I don't think that they'll be adopting that policy in Redmond :P