Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×

Working at Microsoft, the Inside Scoop 437

bariswheel writes "Responding to the public interest, a long-time Apple and UNIX user/programmer, and a JPL/Caltech veteran, writes an insightful, articulate essay on the good, the bad, and the in-between experiences of working at Microsoft; concentrating on focus, unreality, company leadership, managers, source code, benefits and compensation, free soft drinks, work/life balance, Microsoft's not evil, and influence."
This discussion has been archived. No new comments can be posted.

Working at Microsoft, the Inside Scoop

Comments Filter:
  • slashdotted? (Score:3, Informative)

    by freg ( 859413 ) on Wednesday April 19, 2006 @01:51PM (#15158791)
    It's just unavailable if the referall is slashdot.com, try copying and pasting the link into a different tab.
  • Mirror Here... (Score:3, Informative)

    by Anonymous Coward on Wednesday April 19, 2006 @01:51PM (#15158792)
  • Text of article (Score:3, Informative)

    by Anonymous Coward on Wednesday April 19, 2006 @01:54PM (#15158840)
    Working at Microsoft
    Home Photos Writing Software Links About Résumé RSS

    It seems like there's a lot of public interest in what it's like to work at Microsoft. Here's my personal persepctive on the good (+), the bad (-), and the in-between (=).
    Background

    As a long-time Apple and UNIX user/programmer, I never aspired to work at Microsoft. (And I'm still a little surprised to be here.) I've never despised Microsoft like so many people seem to do -- it's just that Microsoft products weren't a part of my world.

    Then my wife got a job at Microsoft, so I needed to leave Caltech/JPL to work in Seattle. I didn't actually apply to Microsoft -- a friend of ours who worked there circulated my résumé and Microsoft responded rapidly and set up a last-minute interview. Although I had five other offers, Microsoft made the best impression.

    And so, here I am. I've been working at Microsoft since October, 1999 as a full-time Software Design Engineer. In that time, I've worked for three teams in two divisions, and had six or seven different managers. Four products I've worked on have shipped, two more are in beta, and I've also "consulted" for many other teams across the company, thereby influencing directly and indirectly a large number of Microsoft's products.

    Between my experience and my wife's, I think I've gotten a pretty solid feel for what it's like to work in a product group at Microsoft.
    + Focus

    As much as I enjoyed working at Caltech/JPL, it wasn't until I got to Microsoft that I realized that there's an enormous difference between working for a software company and a company where software is just a step towards some other goal (space science, finance, medicine, retail, etc.).

    Everyone at Microsoft "gets" software -- the managers, the administrative assistants, the vice presidents... Even many of the "blue collar" workers (cooks, janitors, bus drivers) know something about software -- it's not normal! At NASA, most managers and even some scientists had no real understanding of software or software development. Elevating the common denominator in this way makes Microsoft a wonderful workplace for people who love making software (even if it's far removed from the reality of "the real world", which can cause other problems, like overinflating the importance of software).
    = Unreality

    As a parent, I've come to understand that there's a wide gray area between overprotecting your children and creating a nuturing environment in which they can develop.

    I think Microsoft struggles with a similar problem with its employees. Microsoft provides its employees with a nuturing environment in which they can be most productive. But like children, these employees also need to be grounded in reality and exposed to ideas that can be disruptive or even disturbing. Otherwise a sheltered monoculture can develop that's unhealthy for everyone involved.

    It's hard for people who don't work at Microsoft's main campus to understand just how unreal the experience of working there can become. 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.
    + Personal Freedom

    One thing that's worth losing touch with is the strict work environment.

    Microsoft gives software developers a lot of personal freedom over both the work and the work environment. I order my own supplies, customize my office as I see fit, schedule my own trips and meetings, and select my own training courses. I choose when I show up for work and when I leave, and what to wear while I'm there. I can eat on campus or off, reheat something from home in the kitchen or scavenge leftovers from meetings. I can even work remotely from home (within reason).

    For the most part, I determine what I work
  • by nacks1 ( 60717 ) on Wednesday April 19, 2006 @02:00PM (#15158888) Homepage Journal
    The site referenced in the article is already giving out 503's. Here is a google cache of the page:

    http://72.14.203.104/search?q=cache:ILiHKIGJa_oJ:w ww.qbrundage.com/michaelb/pubs/essays/working_at_m icrosoft.html+&hl=en&gl=us&ct=clnk&cd=1&client=fir efox [72.14.203.104]
  • by Procyon101 ( 61366 ) on Wednesday April 19, 2006 @02:05PM (#15158930) Journal
    I've worked inside and outside of Microsoft as a Software Engineer in the greater Seattle area since 1996. Microsoft has always been on-par or below industry standards for compensation for the area in the Senior Level Engineer arena. Except for the crazy stock back in the 90's it hasn't been a "get rich" kind of job ever.

    However, the work environment at Microsoft is so enjoyable, that personally, I would take a slightly lower wage in order to work there.
  • by Kihaji ( 612640 ) <lemkesr AT uwec DOT edu> on Wednesday April 19, 2006 @02:34PM (#15159176)
    Funny, I could have sworn that AJAX originated with IE http://en.wikipedia.org/wiki/Ajax_(programming) [wikipedia.org]

    I could have also sworn that at the time IE came out, the only other browsers were horrid and stagnant.

    I could have also sworn that IE won a large portion of it's install base before it was integrated into the OS.

    As for the other points in your post, well, I believe you have one thing right, someone is living in a reality distortion field, but it isn't the author of the article.
  • Coral Cache (Score:2, Informative)

    by Skal Tura ( 595728 ) * on Wednesday April 19, 2006 @03:09PM (#15159475) Homepage
  • by d1on1x ( 790202 ) on Wednesday April 19, 2006 @03:13PM (#15159517)
    In another article on his site he writes about blogs, and why he not dates his articles. However, he does have an XML feed to enable us to see when he has posted something new... if you add that you will see the publishing date, it is obvious this article is more then a year old.

    He probably still works there, but this should be filed under 'history for nerds, stuff that mattered'.
  • by LowneWulf ( 210110 ) on Wednesday April 19, 2006 @03:14PM (#15159519)
    Sorry, have to disagree with you there.

    Having worked in several software development companies of various sizes, including Microsoft, I can tell you that Microsoft is most definitely not below the curve in terms of compensation and benefits in recent times. Unless this does not scale well at all as you're promoted, then I would presume it's the same at senior levels as well. It's certainly above average for rank and file engineers.

    I suggest, if you're a member of the IEEE, you check out the salary survey this year. While it may be biased a bit low for the top software companies, you'll still find the Microsoft salaries compare very favorably. Their benefits package... I'd be hard-pressed to even imagine what one could add to it. It's sweet.
  • I can believe that Windows and Office may be somewhat responsible for lack of innovation, but only in those specific areas, not "throughout the industry."

    Really? Because I don't even think there. Linux is better than ever. OSX is a stunning achievement in OS design and development. Sun's offerings are nothing to shake a stick at either.

    On the Office side, OO.org continues to innovate, especially in the format wars with OpenDocument.

    Where exactly is innovation lacking?

  • by mary_will_grow ( 466638 ) on Wednesday April 19, 2006 @04:12PM (#15160099)
    At Microsoft, I've had access to the source code for Halo 1 & 2, Internet Explorer, MDAC, MSXML, the .NET Frameworks and CLR, SQL Server, SQLXML, Virtual PC, Visual Studio, Windows, the Xbox and Xbox Live, and probably several other projects that I've forgotten about. Does it get better than this?

    uhh, yes, it does. Maybe you should visit www.gnu.org.

    The only difference is that when *I* look at operating system source code, I don't have to sign non-compete agreements, and I dont have to agree to fund my existance with money gotten from business practices that are greedy, dishonest, and harmful to the marketplace.

    And I dont have to live in seattle. zing!!! (j/k)
  • Article Text (Score:3, Informative)

    by Heembo ( 916647 ) on Wednesday April 19, 2006 @04:27PM (#15160229) Journal
    Service Temporarily Unavailable
    The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
    Apache/1.3.33 Server at www.qbrundage.com Port 80


    Kindda minimalist, not to mention that it doesn't match the article title.... ;-)
  • by drsmithy ( 35869 ) <drsmithy@nOSPAm.gmail.com> on Wednesday April 19, 2006 @06:50PM (#15161111)
    Then IE came out and cut the funding for competing browsers to a big fat zero. That is when things started to stagnate.

    Your timeline is *way* off. IE 1 was released in late 1995. By late 1996 IE 3 was a sound competitor to Navigator 3. In early 1997 the IE4 betas started to appear and were considered by pretty much everyone to be noticably superior to Navigator 4.x (to take from your examples, IE4 had the first (and better) implementations of DHTML and CSS). Then Netscape finally released the bloated, slow, buggy, unstable Navigator 4.0 and IE started to destroy it in the market. By the time Netscape managed to make Navigator 4.x usable, IE4 had managed to increase its marketshare from something like 20% to about 50% - 60%. Importantly, this was *before* Windows 98 was released. IE5 and IE6 continued to incrementally improved while Netscape dithered with Navigator - but by then, the browser wars were over.

    To claim that IE somehow re-energised the market is a gross misunderstanding ...

    While I cannot agree with GP that the browser market was stagnant when IE was first released, it is difficult to argue that the competition IE offered didn't spur Netscape on. Similarly, it is difficult to see how the situation would have been any different had Netscape, instead of IE, won the browser wars. Just look at what happened between Navigator 3.x and Navigator 4.x - Netscape thought they had such a dominant, unassailable market position that they were prepared to waste time rewriting their entire browser from scratch - and that was *with* massive competitive pressure from IE. Imagine what would have happened if that pressure wasn't there.

    [...] and even if IE was better back then (and by v6 I'd say it was better) [...]

    IE was the better browser at version 4. According to pretty much everyone.

    [...] this doesn't change the fact that it wasn't built to be competitive. It was built to destroy the competition and then halt the progress of the web. That's just bad, no two ways about it.

    I fail to see how anyone could reach this conclusion. Maybe if "the web" were the same now as it was in 1997 - 1998 (when Netscape started circling the drain), you'd have the glimmerings of a point. But it's not.

    I really, really, don't understand why anyone puts Netscape up on a pedestal. Certainly, they were among the first to understand the massive potential of the web, but they - similar to Microsoft - planned to make it proprietry (oooh, "evil" (tm)) and their products after about 1996 took a significant nosedive in quality because of their arrogance in thinking that they "owned" the web and that everyone else would wait for them to set the standard.

  • by bmajik ( 96670 ) <matt@mattevans.org> on Wednesday April 19, 2006 @06:59PM (#15161154) Homepage Journal
    I'm glad you asked. I am not always "sure" (the perpetual "the grass is always greener _somewhere else_" problem), but I think I am happy where I am and this is a good fit.

    Before you stop reading - something to be aware of is that MS has a position called "SDE/T" - Software Design Engineer in Test. They've been phasing out the traditional "STE" (software test engineer) role. I've been an SDE/T since my hire date.

    I originally interviewed for an SDE role with a couple teams, one of them being NT, and those didn't go well. It was the beginning of the reality check for me about what I knew and what I didn't. There were coding problems they asked me to solve in SDE interviews that I didn't solve acceptably. The recruiter would ask a quesiton like "rate your understanding of C++ on a scale of 1 to 10". Me being the hotshot college jerkoff I was said "9". Then she was like "ok, what do you need to do to become a 10?". Then I thought about it a bit and said something like "write a C++ compiler, hang out in comp.lang.*, etc". Then she asked "so why haven't you done that?"

    Oh.

    In these developer interviews, they were asking very hardcore questions about programming, sometimes for programming's sake. I don't code for coding's sake. I started coding back in 5th grade on an apple ][. I cut my teeth with turbo pascal and TASM. I graduated to C in 9th grade (via summer camps and stuff). I had plenty of exposure to programming, a good bit of exposure to languages, etc. But i still can't tell you what all of the bitwise operators do in C without looking at a manual. I can't tell you _anything_ about MFC (except that I am glad we have .NET and Winforms now ;). I only view coding as a means to solve a problem.

    I don't write code for the sake of coding, and I don't like memorizing the details of uninteresting things (even though I like trivia).

    So, when you're interviewing with someone that writes a C optimizer for a living, how can you say that you're a solid "10" at C programming. Compared to who? them? Not unless you've also written a commercially shipping C compiler. When you're talking to the guys that shuffle bits in binary headers in the guts of the kernel, how can you say with a straight face that you get shift-right and shift-left confused because you never use them ? That was me.

    That was the perspective I never got until i started at MS. I was used to being at the top of my classes in school and I rarely ran across someone that had the same problem solving skills I had. That's what I came to my MS interviews with.

    For an SDE position, they're after someone that is passionte about coding. Someone that lives and breathes it. They want to write code when they're not at work. That's not me. I do some coding at home, but only when there's some especially irksome problem at hand that nobody has a good solution to, and that I think i can pull off. When I'm not at work, I'm more inclined to want to work on my car. The car could be better, and I can't afford to pay a garage to work on it, so I've learned to do it myself. I'll never get ASE certified, but I'll learn how to do what I need to do to a car to accomplish my goals. Nothing more.

    The position I have actually has a fair bit of design and coding. But it's not shipping code - it's code that tests or optimizes the testing of the actual shipping product. Automated testing is the name of the game at Microsoft. I was the guy behind the the automated testing system that ran all of the developer tools tests for a couple years. There's a lot of moving parts in that system. It worked in spite of itself (it was all written in VB, ran against a single SQL box, but served thousands of 24/7 automation execution machines.. with hundreds of thousands of automated tests). I knew the code to that thing well.. but not because I liked the code (i didn't), but because I liked what it did. I liked the power it gave our test org, and the quality we could drive into
  • by Afroblanco ( 966776 ) <ceruleancaterpillar@hotmail.com> on Wednesday April 19, 2006 @11:10PM (#15162211)
    I have a couple friends who work at MS. My impression is that how much you like your job there very much depends on what you're working on. One of my friends works on .NET, and he loves his job. I mean, the man writes programming languages for a living. He's got a great job! Of course he loves it. My other friend, on the other hand, works on a product that I will not name, except to say that MS totally undervalues its importance and does not dedicate nearly enough resources to it. Although I wouldn't say that he hates his job, I would say that he, at very best, tolerates it. Regardless of your specific job at MS, I will say that Redmond is the most disappointing site you will ever see. You would think that the headquarters of the world's largest software maker would be impressive, right? Wrong. It's like every other crappy suburb that you've ever seen, except all the office parks are owned by one company. Lame. Although you don't have to live in Redmond to work at MS, your only alternative is to live in Seattle and make the > 1hr commute every day.
  • by Savantissimo ( 893682 ) on Thursday April 20, 2006 @12:04AM (#15162451) Journal
    "a corporation is not legally a person"

    Unfortunately, yes, they are. See http://www.ratical.org/corporations/SCvSPR1886.htm l [ratical.org] for the text of the USC decision.

    Quoting from David Korten's The Post-Corporate World, Life After Capitalism (pp.185-6):
    In 1886, . . . in the case of Santa Clara County v. Southern Pacific Railroad Company, the U.S. Supreme Court decided that a private corporation is a person and entitled to the legal rights and protections the Constitutions affords to any person. Because the Constitution makes no mention of corporations, it is a fairly clear case of the Court's taking it upon itself to rewrite the Constitution.
                        Far more remarkable, however, is that the doctrine of corporate personhood, which subsequently became a cornerstone of corporate law, was introduced into this 1886 decision without argument. According to the official case record, Supreme Court Justice Morrison Remick Waite simply pronounced before the beginning of arguement in the case of Santa Clara County v. Southern Pacific Railroad Company that

                                The court does not wish to hear argument on the question whether the provision in the Fourteenth Amendment to the Constitution, which forbids a State to deny to any person within its jurisdiction the equal protection of the laws, applies to these corporations. We are all of opinion that it does.
    The court reporter duly entered into the summary record of the Court's findings that
    The defendant Corporations are persons within the intent of the clause in section 1 of the Fourteen Amendment to the Constitution of the United States, which forbids a State to deny to any person within its jurisdiction the equal protection of the laws.

There are two ways to write error-free programs; only the third one works.

Working...