Musings on Microsoft

If you can believe it, it’s been 4 months since I left the big M. I miss a lot of people there, but I can’t say I’ve missed working there. Sure, I’m still in the honeymoon phase here at Unity – but so far, it’s been fun, challenging, and most of all, just plain refreshing.

I took some notes on a few “aha” (or “hmmm”) moments during my first few months. I thought there may be more, but I pretty much hit all of these within my first month or two – but given the weight of the last one I’ll share, I wanted to sit on it for a while while I pondered and reflected on my thoughts.

No Mo’ Microsoft

I’m really surprised how easily (and quickly) I transitioned to using so few Microsoft products on a daily basis. I have a Windows laptop (I still regret not getting a MBP instead, but I’ll save my reasoning for another post), and I use my Xbox a lot at home. But looking at running apps on my phone and desktop, almost none of them are Microsoft apps, yet I remain massively productive. The one exception is Excel. Excel is a beast and a brain dead simple way to pull and manage data from a remote database. In my last few months at Microsoft, I began using Visual Studio Code, and liked it a lot, but I’ve since discovered Sublime Text, paid for my own copy, and now have my favorite code editor ever.

Let me also use this moment to speak of the happiness that envelops me now that I don’t need to use Outlook. Ever. :). Yes, there’s no doubt that Outlook is the most full-featured mail app available, but it’s fat and slow, and I don’t remember a day ever not cursing it. I prefer a unified client over gmail windows, so I use Mailbird, and have been very happy.

Death of the Desktop

This is something I knew before, but never really thought about. With obvious exceptions in teams like VR or Graphics, pretty much nobody uses a desktop PC. Nearly all of my friends and colleagues at other tech companies use laptops exclusively, and 99% of the people I work with use only laptops (connected, of course, to external keyboards and a pair of 27″ 4k monitors at work).

Of course, if you’re building Windows, you need a big beefy desktop machine. As an aside, lot’s of tech press last week about Windows moving to git for source control, but they chose to not package / componentize windows, so I imagine it still takes the better part of a day to build the beast even on the fastest machine. Fortunately, most of us build things that can build and test in a few minutes, and laptop convenience is worth any shortcomings in the ability to compile a zillion lines of code.

One interesting thing about this is my observation of what happened when we had a brief (10 second or so) power outage in February sometime. If this had happened at Microsoft, hours (no exaggeration) would have been lost as people rebooted – ran disk cleanup utilities, and recovered lost work. At Unity, people stretched as their external monitors went blank for 10 seconds, and then went back to work. ~Eighty employees on site x $40 an hour (minimum), x 1 hour = $3.2k saved (ish!).

Customers

Microsoft builds software for corporations. Yes, those corporations have people, but they’re so far removed from the general Microsoft employee that they just don’t relate. XBox One may have been the closest thing to an exception from my career of something that had more customer focus – and maybe Windows 95, but that audience is drastically different from the people using software today.

I can’t speak for other companies, but at Unity, we make multiple decisions today based on the customer and their experience. “How well does solve the customers problem?” “What does this enable the customer to do?” “Does this make our customers more productive or happier?” The people I work with here work hard with the goal of pleasing the customer.

Microsoft, upon reflection, doesn’t really give a shit about the customer. Sure, they do at a hand-wavy meta-level, and there will be several of my old colleagues who will tell me I’m wrong, but after seeing “real” customer focus for the last four months and reflecting on what motivates people, I’ve had a harsh realization. As I mentioned above, at Unity (in general, at least), employees take actions daily to please the customer. At Microsoft, employees regularly take actions with the goal to please their manager. I see people at Unity of all levels work across teams, and with a variety of people to do what’s right for the company and for our customers. Microsoft employees, in hindsight, avoid doing most work that doesn’t help themselves, and are over-focused on career growth.

The last sentence may sound like a harsh biased view from a disgruntled employee, but for context, I’ll share a big mea culpa. I spent at least 5 (probably closer to 10) years at Microsoft driving “career growth” initiatives across the company and sharing career growth plans and examples, especially with, at its peak, nearly 10k testers at Microsoft. I worked with HR on building Career Stage Profiles describing career growth across Microsoft’s level bands. As a result, most msft employees (again, I worked across most of Microsoft, so I feel “most” is accurate) became focused on “how do I get to the next level” rather than “how can I create great software”. I helped build a monster, but didn’t realize what a distraction and deterrent it was for customer value until my time away (and significant reflection during long plane flights)

My last team especially (and I can say this without fear of disagreement, even though some of those folks read my blog) had a huge culture of pleasing management over pleasing customers. While I believe (and see at Unity) that customers drive our work decisions, what I saw on Teams was over-the-top culture of making directors and Vice Presidents happy – sometimes at the expense of the customer. To be fair, that sort of culture happens in other teams (and other companies!), but it’s not the way I want to make software. The days of we-make-it-you-take-it software development are over. Microsoft have a history of making the software they want to make and convincing their customers it’s what they want. Sometimes, they’ve been successful in this despite themselves, and I give them (us, at the time) full credit. However, we have the tools and ability to learn from our customers, understand our customers, and to solve their problems wonderfully. To me, any approaches that completely (or largely) avoid customer learning are irresponsible.

I’m not hating on Microsoft. They have a ton of smart people who want to do the right thing. While I’m fairly confident that what I wrote above is an observational fact and not opinion, I have an opinion that the long-in-tooth thick layer of middle management has been a primary contributor of this growth-emphasis problem. More likely, it’s a full-on systems problem with multiple inputs, but fortunately, no longer in my span of problems-to-solve.

With this said, I’m sure my old colleagues will tell me how wrong I am (I’m confident that I am not), and my new colleagues may also tell me I’m wrong (which I may be). What’s important is that from day to day, I see customer-driven decision making that I never saw at Microsoft, and it’s been ….refreshing.

9 Comments

  1. DK
    Posted May 31, 2017 at 5:02 pm | Permalink

    I Agree with you Alan. The ironic part is that you were a part of that system and pushed that system hard.. Even on Xbox, being the quality person, I still remember your massive pushback on making code merges less painful via automation instead of your lame idea of having every engineer run manual steps?! Even if it wasn’t just your decision, you were the loyal terrier of whichever manager said doing the right thing was hard and would jeopardize the ship date.
    Maybe you realize that being customer driven is what is needed to succeed at Unity, which is great but I’m not convinced you’d switch back to manager appeasement if that was what you needed to do to be successful. Best wishes on your new adventure

    • Posted May 31, 2017 at 5:06 pm | Permalink

      My old brain must be fading, because I don’t remember anything about pushing back on any automation.

      In fact, I pretty much just plugged in where needed on XBox.

  2. Posted June 1, 2017 at 1:24 am | Permalink

    I won’t fully disagree with you, after all soon I will not work for Microsoft for the same root causes.
    But context is king and you need to examine facts from more than angle.
    Microsoft is not listening to customers ? maybe (although my Microsoft listened heavily and daily) but there is a difference between an 1500 employees company trying to sell stuff, to a giant trying to shape the market and create new niches.
    And yes, a culture of pleasing managers is wrong, but it comes with the territory. For more than once I tried to think of a better way to implement a FAIR performance based compensation scheme in a 100K employees company but couldn’t find a good one.
    Strangely my small branch of Microsoft hardly have any Desktops, and power outages mainly influence a few non-UPSed servers.
    “may sound like a harsh biased view from a disgruntled employee” sounds more like a sentence from someone out of a bad divorce, and now in love with a young energetic blonde

    all in all, it’s a good read and good reference material for coming years when you find the truth about your new employer 🙂

    • Posted June 1, 2017 at 6:15 am | Permalink

      I’m sure they care at some level. But given a choice between making a decision on deeply understanding and pleasing a customer, or looking good to your boss, 95 out of a 100 of my former colleagues would choose the latter. They’re not doing it because their arrogant or shallow – that’s the culture I saw.

  3. Posted June 1, 2017 at 6:09 am | Permalink

    What you missed is that it wasn’t about career growth, it was about survival. When you have a system where you MUST be promoted every few years or be fired, how do you expect people to act? When you base raises and promotions on a stack ranking people are forced to compete against own team for survival and tens-to-hundreds of thousands of dollars. You can’t expect someone to worry about making a nameless customer happy when he or she is worrying about what the person in the next office down is plotting.

    • Posted June 1, 2017 at 6:12 am | Permalink

      True as well – but the drive for self-promotion continues with folks far beyond the level where promotions aren’t required for employment anymore.

      But again, yes – the review system – even though it was hugely improved in recent years, also plays a part in the system.

      • Posted June 1, 2017 at 7:07 am | Permalink

        I never knew anyone who made it to a level where promotions weren’t required anymore; but if such a level existed it would stand to reason that the people who were most driven to get promoted would get there.

  4. Jim Hazen
    Posted June 1, 2017 at 7:44 am | Permalink

    Interesting observations from a “long timer” at Microsoft. You were so embedded in the system/culture there for so long you didn’t get a chance to see what some in the outside world were experiencing. Such is the case for people who work at a single company for a long long time. Now you are getting a chance to see a different culture and system, which is good. Stagnation in ones life and career can be a problem.

    Then on the other hand you have someone like me who changes companies (now projects as a consultant) every 2-4 years looking for an ideal company of people who want to make a great product for the customer. I’ve “self” promoted myself in my career moving up the ladder and pay scale. So what you experienced isn’t unique (as you stated there are other companies/situations where it happens) to just MS. But from my standpoint it has been both blessing and curse. I’ve seen a lot of different things and had a chance to work with a lot of different technologies and people over the years. I’ve always tried to settle down and stay at some place, but due to a change in culture (due to management changes or a merger/acquisition) or wanting to move on to newer technology I haven’t done so. But my employment record is full of companies / clients I’ve been with, and I do get questioned on it. Now because I focus on Consulting type work, and have for the last 8 years, I can justify most of it.

    I just hit the 30 year mark in the Software industry and I’m a bit reflective myself right now. I had a chance to go to Seattle and Microsoft in fall of 1989, and didn’t take it for a couple of reasons. I stayed in L.A. and went to work for Peter Norton Computing instead. And I won’t go into that one in order to keep from really going off in left field. Suffice it to say it shaped most of my career after that.

    As someone else said it is about survival to a large degree, we all do it. Got to pay the bills. And you may be in a Honeymoon situation right now, but I think you know it and hoping that this change is the right one. If you didn’t believe so I don’t think you would have left Microsoft. Take it for what it is, a fresh start and a chance to do what you really believe in and want to do. It’s a bit like leaving your home town, you’ll miss it but you know you have to do this to move forward. Best to you on your new endeavor. Keep posting, you always have great things to relay.

    Regards,

    Jim Hazen

    • Posted June 1, 2017 at 8:04 am | Permalink

      Always love hearing comments from you Jim – thank you.

Leave some words for the weasel

%d bloggers like this: