This is an almost 100% comment paste job post, with a touch of commentary at the end. The first two comments I think are just great and worth repeating, especially for those poor people who just read the web feed.
One: Lou Giliberto provided the following interesting tale of sending feedback to SteveSi and then ending up having a meeting to follow-up on that email:
Hey Mini et al.
In my group we were having an e-mail discussion about process. Someone forwarded the link to Steven Sinofsky's blog entry on Bureuacracy.
In it he said:
We’ve put in processes that make no sense. We’ve decided things as an organization that are plain dumb. How do we excuse these? We don’t. MS people send me mail. I want to know about them.
So, I sent an e-mail to both him and Jim Allchin about process in Windows. I tried to make it not a rant, but I sure part of it ranted because it's a subject that burns me up.
But what I did was try to give personal examples of where the current process fails.
Jim Allchin took the time to respond to me, and he agreed with certain points, disagreed with others, and said he would look into trying one of my suggestions.
Steven Sinofsky thanked me for the mail and asked that I find some time to meet with him and bring some of my peers along.
So, on Friday me and 4 of my peers went and met with Steven. We outlined a bunch of problems we had with the process, how it affected us in our day-to-day jobs, etc. We had people from test, a dev manager, devs from two different windows orgs, etc. So it was from several points of view at the IC or low management level.
He listened, agreed with certain points, disagreed with others. He also challenged us to come up with a next step to fix things and offered to help us with it in any reasonable way he could.
BTW, Steven doesn't wear Gucci loafers. Though, he wasn't dressed like me either (hair past my shoulders, "No, I will not fix your computer" thinkgeek T-shirt, and torn jeans). AFAIK, Allchin doesn't wear Gucci loafers either. I don't have a foot fetish, so I usually don't pay attention to such things.
The thing to remember, especially about Sinofsky and Allchin, is that they started at a level where this stuff would affect them. They do understand how to do development. They weren't born into senior exec positions. They do have other concerns and a different view because they have different responsibilities at that level. So, opinions are bound to differ on some level.
But they obviously don't want things that stop us from shipping good products, so if there is a real problem, they want to know about it.
Sinofsky and Allchin want to fix any problems. When they disagreed with me, they were clear why certain processes were in place. That gives me an opportunity to offer an alternative to that process that may work better.
But, you can only have this kind of give-and-take discussion if you are willing to talk openly and face-to-face (or at least in e-mail).
Do I fear retribution? Nope. Because I didn't make a jackass out of myself, I stated things factually (with a tinge of bitterness and frustration), and by being non-anonymous they were given the opportunity to understand exactly how the process affected me and my peers.
By coming with some peers in a non-confrontational way to an invite from an exec, he was able to see this wasn't one disgruntled dev. Myself and peers have been at MSFT from probably like 3-13 years. We weren't people with a string of 3.0's (deserved or otherwise) looking to grind an axe.
But yes, I have received retribution from a manager who didn't like being confronted with the truth. The thing is, though, he could afford to be petty. A senior exec is not going to be petty. They don't have time to waste. They're not going to waste their time singling someone out who is trying to fix things even if it's bad news.
And it goes both ways. I don't waste their time. I'm not going to complain to Allchin or Sinofsky about a personal problem. If my manager is a jerk, I'll either tough it out or leave. HR is worthless as many people pointed out because they are there to protect the company, and admitting fault doesn't protect the company.
If you are going to raise heck at work about a serious problem, you need to target the right level, and you need to be clear about the problem.
In this case, comment was invited, so I took Steven up on his invitation. I never met the guy before because I was always in Windows or MSN, but if someone is willing to listen, I have something to say. I CC:ed Jim because Windows is his org, and I don't talk behind people's backs about them or their orgs.
Now, will things change based on the feedback given?
I don't know (LOL). Though I received agreement from both execs on certain items, some of the problems are really hard to fix. Some of them can't be done right now - you can't change how everything is built in the middle of a release, for example.
The important thing, though, is that I talked and was listened to without retribution. There is a way to provide feedback in the company without losing your job or getting a 2.5.
You have to find someone who wants to fix the situation. Managers apply retribution when they don't want to fix the situation or when they are the direct cause of it and they're CYA scumbags.
So, my advice is if someone says "I want to hear about it" the right thing to do is to tell them about it.
You can always find someone willing to listen if you try hard enough, and you won't get fired for telling the truth.
Anyhow, I just wanted to make the point it is possible to give non-anonymous feedback about touchy subjects. I encourage people to do so whenever possible.
Two: I_LOVE_MEETINGS provides the following long-timer's perspective:
Geez. So much misinformation here. I am really surprised that so few (if any) middle- or senior- managers are saying anything.
Let's clear some of the rumours.
First, some background: I have been here for a looong time. I came in back when Developers were hired in as a "10" instead of a 59 or a 60. Years before the basketball courts were plowed to make room for the EBC. Back when there were half as many tiles as there are now in front of bldg 16. I now manage those who manage Developers, PGMs, and Testers. Saying too much more than that will give away who I am, but suffice it to say that I know what I am talking about.
Ok, here we go.
1. They do Stack Rank in MSN. I am not sure how Kevin's group is immune from that.
2. MSN is failing, and is mediocre, because it is staffed, for the most part, with mediocre people. MSN and all of the RedVest "Rest and Vest" teams are simply where the 2.5's, 3.0's, and burnouts from other (profitable) divisions go for in-office retirement. Hell, we've all been to RedWest, gazing at the women sitting around on the grass eating lunch, marvelling at the similarities between RedWest and a posh ski lodge. Many of us have seen the server labs that take up half of a floor, with their walls flanked with flat-panel HDTV LCD monitors that immediately switch from Halo2 to "Latest BVT Results" as soon as a senior manager walks in. Many of us know about the weekly morale events for the near-death teams (Autos, Homes) that include water-skiing on Sammamish and beer on Thursdays. The entire operation is a complete scam, and MSN should be spun-off as its own separate entity and allowed to die on its own. No more also-ran technologies. No more clueless SDEs and SDE/Ts who have benefitted from the rampant, stereoptypical MSN Level Inflation and promoted to L62 even though they only know how to write javascript and link together aspx pages. No more of my time spent warning my hiring managers to be wary when a L62 from MSN interviews for a L62 in our division, because more than likely the person is 2 levels higher than where he is supposed to be.
2. I severely doubt that if someone receives a 2.5 and is moved out of the org, that the ONLY reason it happened is because he/she voiced ONE dissenting opinion, one time, to ONE manager. 2.5's are held under careful scrutiny before they are given out, as are 4.5's. A lead/manager has to have some super compelling data that justifies giving someone either score. "He didn't agree with me once" simply does not cut it. On the other hand, though: "He never agrees with me, and is always moping around telling other people on the team that we are not doing the right thing, and in general is a drain on morale" is a solid justification.
3. I hate to say it, but here at MS, similarly to almost every other company in the world: Networking and social skills do help. If your manager likes you, and understands what you are doing, and sees your contribution, and doesn't see you as a drain on productivity or morale, he/she will go to bat for you.
4. The Stack Rank is a game, just like everything else. Learn to manage it. Learn to manage the perceptions that people have of you. Folks get ahead here because they increase their scope and span of influence. You'll get that next promotion when you have demonstrated that you can operate at that ladder level (in terms of scope, accountability, and skillset). A manager who promotes someone and then gives them a 2.5 (or sometimes, even a 3.0!) the following year OFTEN gets questioned. ("Why did you promote them to their level of incompetence? Are you not in tune with their ability?")
5. When the other senior managers and I sit around in {insert discipline here} Coordination Forum meetings, reviewing stack ranks for every team for that discipline in the division, there is always a person who is penciled in as a 3.5 yet who deserves a 4.0. When the manager cares, and goes to bat for the person with the right kind of data, I often see that person changed to a 4.0 instead. And do you know what helps? If that person has contributed in such a way that OTHER managers at that roundtable are aware of the contribution, and thus all can go to bat for the person. A senior manager is never going to argue a corner case, and is never going to push for someone whom they know has (choose one): angered folks on other groups, messed up a cross-team collaboration, rocked the boat with no apparent positive effect, etc.. A manager who cares will have collected the data beforehand, synched up with his/her peers prior to the coordination forum meeting, and communicated his/her intentions to "get an extra 4.0 for Susan". And when the support is there, it happens more times than not.
(Of course, this typically means that someone else might need to occupy the aforementioned 3.5 slot, which is where the "Rank" part comes in. But I digress.)
6. Someone asked, a few blog posts ago, why employees are asked to self-rank. For my teams, and the teams of my peers, the ONLY reason I want to see the self-ranking is because I care about the differential between the manager's rating of the employee, and the employee's self-rating. A differential implies a misalignment in understanding and/or communication. I always tell my managers: "The Review is not the time for surprises. If your direct ever leaves a review discussion surprised by the message or the overall rating, you have failed in communicating with that person over the last year."
7. A manager is NEVER forced to give someone a particular rating. If your manager says, "You deserved something else, but I had to give this to you because the curve forced me to", don't even bother escalating or pushing-back. Just start doing informationals and get the Hell outta dodge. If someone that weak has been promoted into a management position, it implies something about the overall caliber of the team that you really don't want to have to deal with. Trust me. I have seen high-performing, high-profile teams in my division where a full 40% of the team is given a 4.0, because the manager has gone to bat for the team, done the right thing, and made sure the VP(s) have understood why so many folks on the team need to be rewarded. Yes, again that means that there is a team somewhere else in the division that receives 40% 3.5s, or even 3.0s. At the end of the day, though, because we have divisions such as MSN which, in my opinion, are staffed with lifetime 3.0's, it all works itself out.
8. Yes, there are incompetent managers here. I have been here for a long time, and I am amazed that some of my peers are in the positions that they are. They are not leaders; they are pureplay "managers" who, because they can not innovate, lead, instill trust in others, or enable their teams to succeed... They spend the bulk of their time playing politics, name-dropping, dreaming up new processes that are ONLY meant to "get their name out there", etc.. It is frustrating, but I have seen it at other companies as well. My hope is that over time, the weak manager who promoted them eventually moves on, a stronger manager is put in place, and the person's incompetence 'rings loud and clear' with that new management. And that new management enacts change.
9. Yes, there are useless processes here. Some were obviously created by folks who were motivated to create them for their own self-preservation. It's not these people's fault; typically there is a situation where a person's ladder level demands an increase in scope, but the person is so hopelessly incompetent that they they are in a senior position on a product/team that has maxed out in terms of strategic impact. What's the solution? Make something up! No offense to Ben and the rest of the innovators on the Feature Crew effort, but there are parts of the FC process that were apparently put in place by people who just wanted to have their name on the FC process. Some of the fields on the Infopath form, some of the hoops Dev and Test need to jump through in Product Studio... The common conception is that they were put in place just so one person could say, "Hey that's the part I created". Yes, I predict that Ben, Dean, Stefan, etc etc may respond here and say "Let me know what improvements should be made..." For the record, you already know about them. I have told you in person. :-)
10. I have heard of people being prevented from interviewing for much longer than 90 days! I remember an acquaintance of mine who did an Informational with me for one of my teams last year. We spoke, determined there would be a good fit, and agreed to proceed with next steps. Immediately after that, he went dark on me. I pinged him a few weeks later, and he said that his manager had told him, "If you interview with that team and don't receive an offer, I won't be able to support you here any longer. Just wait until we ship, and then I'll help you". Mind you, this was last year, and the product in question won't be shipping until NEXT year. A 24 month 'stop loss'! I was going to say something, but the particular manager (a GM who over the years has also made a name for himself as being a complete incompetent) was "moved into a different opportunity" in another division only a few days later. And to make the situation a complete mess, the individual (who had almost a decade of tenure and a lifetime review average of ~4.0) left the company a short while after that.
11. I'll probably stop reading this blog soon, because most of the topics here are rehashes of the same issues, simply restated. But suffice it to say: We do work for the greatest software company in the world. Many love us, and many fear us. We are going through some growing pains. Some of them will be addressed as a result of the top-level reorg and subsequent reorgs that will be announced at lower levels in the future. Some won't be addressed until some of the mediocrity is drained out of the middle-management tier. But as Stephen mentioned in his blog: It will all work itself out. Posting here won't help; the gears are already in motion. If you want to expedite the cranking/turning of those gears, talk to your manager, or HR, or write up an anonymous letter and slip it under your VP or GM's door. :-)
Three: the following comment builds on some of the growing disenchantment here:
I feel like the original intent of your blog - which was about how to help our company identify and perhaps stop some of its potentially fatal behaviors - has deviated way off course into a Redmond-centric developer and tester bitch session. I'll check back in a couple of weeks to see if you have it back on some kind of constructive track.
(Hmm. I've been on a constructive track?) Even I blew a gasket last night and had to plead to people to stop the... sorry, no other way to put it... dumb ass cat-fight bantering. Now, maybe I'm throwing a black pot around my glass house, but please don't go making broad, unsubstantiated put-downs of testers, devs, PMs, or HR. If you have a specific troublesome event you want to share, that's great. That's real. But saying that none of us knows how to format a drive? Geez. I'm glad to see at least a few people followed up with positive stories to help offset the sniping.
If you really want to explore Dev vs. Test, go create a fun blog or community space on your own and roll-around in it to your heart's delight. It is super easy to do.
Now, given the cat-fight, I think there is something at the heart of this. And I think there's an issue regarding the push for testers to suddenly wake up one day as SDETs and start cranking out automation as if that's going to be the solution to all of our non-shipping ever slipping woes. It's a solution. But in some cases, it's been taken too far and we have to be strategic in reducing it. E.g., if it takes 10 minutes to make a UI fix but two days to update all of the broken automation, well, repeat that many times and you start realizing you might need to tweak the process a little.
Fourth: looks like my broad and somewhat insulting statement towards HR and the exit-interview process in my last post wasn't 100% right, according to this commenter:
I went through an exit interview not an awful long time ago at MS. Now I know some folks who didnt bother showing, just dropped the badge at reception. I know others who showed up and noted it being a formality.
For my experience, I took the time to ask every question I had about exit benefits and such. The fellow who conducted the interview was helpful and answered all the questions he could. Those he couldnt answer, he researched and contacted me to answer them a few days later. When we got to the "why" question, I asked how long he had blocked out. And I let it all out. The review process. The internal transfer politics. The directions the company was taking. The lack of action within my group on negative feedback in the company poll. I backed up the dump truck and emptied it. I went item by item down my notes.
To his credit, he listened attentively only interrupting to postpone a task he had on his schedule.
Now whether or not he acted on my opinions and experience is not known to me. But he at least did the courtesy of listening to me until i was done.
I'd still prefer that the reason for people leaving be collected and shared and turned into action items vs. the occasional bit of text cropping up in the blogosphere. As for HR in general: it would certainly benefit folks in HR if the rest of the company had some visibility into what you do and why their everyday worklife is better because of you. Most people, like me, only deal with HR when something bad is about to happen or has already happened.
Finally: oh, great, another anti-trust settlement involving an orgasmic flood of shareholder's cash. When I saw the headline with the dollar figure my mouth fell wide open for a good ten seconds. How does that make you feel, Mr. Shareholder? I certainly hope this was the last act of contrition and we're not reading about our billion-dollar settlement with Google five years from now.