Here’s where I am dumping a lot of my thoughts about what it’s been like to work at Microsoft, and more generally, how it fits into what I want to do.
Microsoft has a bunch of perks, many of which I make use. It follows that I would lose these if I didn’t work at Microsoft. In rough priority order:
Rank | Perk | Value |
---|---|---|
1 | 1:1 donation matching | up to $15,000/year |
2 | Subscription to Wall Street Journal | $42/month |
2 | Subscription to New York Times | $16.25/month |
2 | Subscription to Washington Post | |
2 | Subscription to Financial Times | |
2 | Subscription to The Information | |
3 | Wellness stipend. Taxable, but can be used broadly. | $1,500/year |
4 | Free Xbox Game Pass Ultimate for me | $20/month |
5 | Employee discount on Microsoft Office, Windows, etc | 80% |
6 | Employee discount on Xbox/PC games, and Game Pass Ultimate subscriptions for me or others | 50% |
7 | Employee discount on Microsoft hardware (Xbox consoles, Surface laptops) | 15% |
What do I do?
In the abstract, I tried to capture this in my system architect page. Specifically to Microsoft though, I struggle to define this.
Perhaps I should ask myself the following:
- If I stopped working tomorrow, who or what would be negatively affected?
- Is there anything in my role that I believe truly matters, even if others don’t recognize it?
What’s good about it?
The perks are good. The CEO is good. I think the company is fundamentally trying to make the world a better place now, and it is doing so in a generally responsible fashion. Of all the big tech corporations, I feel like it’s one of few that I can feel proud to work at. Apple may be the only rival on that front.
What’s not good about it?
Successful Microsoft employees are all-in on Microsoft, understand Microsoft processes, and are happy to learn and use Microsoft tools even if they aren’t the tools that the rest of the world uses. This is acutely apparent in HPC, since so much of Azure’s guts are fundamentally built on Windows-based tools and processes. For example, backend cluster management is done using PowerShell. If your first exposure to HPC is in Microsoft, you’ll have no problem using PowerShell to manage HPC clusters. But if you are an HPC person, it’ll be weird to do and a useless skill to learn outside of HPC in Azure.
What have I learned?
Just as an elephant has to eat hundreds of pounds of food per day just to sustain itself, giant companies need thousands of employees just to sustain their internal processes. Innovation and research require more “food” on top of that; in principle, you could have some employees work on sustaining and some employees work on innovating, but in practice, both get smeared across all employees to varying degrees. As a result, the ratio of productive-to-bureaucratic work for any given person goes down as the company gets larger. There are some lucky few who get to focus most on productive tasks and spend less time in handshake-style meetings, but those positions aren’t the norm and take a long time to earn.