Phil Haack blogged about how, as a new Microsoft employee, he's drinking through the firehose [FYI to Phil: Brian Goldfarb has been using this as the motto on his blog since 2003, before Dare's post] and I'd thought I'd add my two cents to the lifecycle of new employees.
Microsoft absolutely has a "sink-or-swim" mentality for new hires (college or professional hires). That doesn't mean there isn't a vast support network or mentoring options, but it does mean that, in general you are given a goal or metric and you can decide how to reach that goal/metric. Unlike other companies where you're told what to do, a good number of jobs at Microsoft, it's up to you to own the goal or the problem.
Ownership can be a double-edged sword, but it seems to be the most effective way to address issues. Ownership, to me, means that you or your team is personally responsible to fix something or meet a goal. This can be a double-edged sword in that other teams that don't "own" something often-times won't put resources towards something you depend on, hence the challenge with cross-group collaboration. In general, I think ownership is the way things get done around Microsoft and the times I've seen shared ownership work is when all teams involved have committed to the goal or fixing the problem.
New Employee Stages
- Stage 1: Incompetence - When you first join, you're surrounded by really smart people and you slowly start to realize that you don't even know how much of what you don't know. Whether it's acronyms, confidential projects, tools, or systems/processes, there's a ton that you'll be learning. In some ways, it's like in the Matrix just staring at a series of scrolling green text...
- Stage 2: Understanding - ...then you see the pattern. The pieces click together. What was once an undecipherable code becomes clear and you start seeing how things work. Things that seemed impossible before are now trivial. This is just like at the end of the first Matrix movie where Neo is, without much effort at all, able to block and parry Agent Smith's attacks.
- Stage 3: Execution - Sometime after your first year, you'll look back at your noobish-ness and realize you'd likely do many things differently in your first year at Microsoft. You'll also realize just how empowered you are to "own" problems and, since you understand the Matrix, you know how you can address the problem or goal. You have great ideas, you know what the problems are and you don't carry the "baggage of broken dreams" that the Jaded PM in Stage 5 has. Because you are competent during this stage, you'll also get the distinct feeling that the "other teams" you work with are "incompetent" (they may not be, they likely just don't own your problem). You strive to "take ownership " of the different parts of a problem so you can actually get your work completed without dependencies on other teams. I've seen some of the best devs/PMs/etc solve a problem that was completely outside of the scope of their job/work (say by finding a bug in someone else's code) so that they wouldn't be blocked by another team.
- Stage 4: Connecting - After years of executing, you start to build a large set of connections with other teams (in your division, business group, or across business groups) and those inter-connections become immensely helpful as your problems become more complex. Knowing who the PM/GPM/Dev in charge of xyz means that you'll be able to get questions answered or resolve issues orders of magnitude faster. Microsoft is a really big company and it's only after some time that you start to know who all the players are and a team that previously told you to "get lost" is now willing to work with you as you're relationship with that team means you're not one of those other incompetent people.
- Stage 5: Kool-aid or Jaded - After a while, there's a natural tendency to move to either LOVE Microsoft or become jaded. This isn't to say that the jaded employee is wrong or even a bad employee, it's just that there is only so many times that your idea, bug, spec, can be rejected before you become bitter at the whole process. The jaded PM, or the "realist" PM is also self-infecting, attending meetings and shooting down ideas, especially for Stage 2 & 3 employees that finally get the system and are trying to improve what's going on. I cannot tell you the amount of times that someone has shot down ideas because they were "impossible" or the "dumbest idea I've ever heard" only to have a stage 3 kool-aid employee show them that the "impossible" can be done, it didn't require meetings with three teams, and it was done in hours, not weeks as was previously estimated.
The cycle repeats itself as you get promoted (to a new level of incompetence), switch teams, or switch disciplines (ex: PM to marketing).
To those that are new to Microsoft that are reading this
- Expect change. It happens constantly.
- The really big ideas take years (and maybe a different team) to be built. Patience and faith are key
- Make sure you love what you do, don't stop pushing for change that's good for your customers, and try not to become a jaded employee.