Tuesday, June 21, 2005

Recent Random Bits

Lots of lightening and little biking today. Some random bits:


Yes, thumbs up to the start.com folks for getting something out there. I especially like this snippet from Sanaz's blog:

so we get to scoble's office, pick him up and drive back to redwest to steve's office to do the interview!!! it was fun! he gets it! he gets the concept of a lean and mean team that just gets shit done! you don't need a hierarchy and 50 ppl to ship cool stuff! and he so gets it.. it's been a particularly rough day filled with tons of politics today, so it just feel SO refreshing to run into ppl like scoble...

(My blog high-fives your blog!)

This all happened about the same time I re-read Mr. Lippert's How Many Microsoft Employees Does it Take to Change a Lightbulb? post when I saw it was going to be in Joel's upcoming book of essays. Good lord, yes, this is the life some of us have to live (usually ending up with me back in my office contemplating the handfuls of hair I've ripped out of my scalp, muttering "Pleasing customers... while cutting features and keeping Elbonians happy, too..."). Meanwhile, Sanaz and her team and other inspired teams can show how to kick butt and get, ah, stuff done.


Dare Obasanjo has an interesting post called Ten Ways to Improve Productivity and Morale at Microsoft that looks at the "10 Crazy Ideas to Shake Up Microsoft" ThinkWeek paper and gives it a thumbs up. He encourages Microsofties to take a few minutes to track down the paper and then ruminate on its points and proposed solutions. Often.

One fantastic thing about Microsoft, and the reason it can be saved from its current bloated, slow, process-ridden, 20-person-lightbulb-changing ways is that it does encourage teams to just take responsibility and get out and there and ship something. Obviously in this day and age you have security and privacy to deal with, but you have the keys to all the other shackles we've managed to laden ourselves with. Cut the ropes with other external teams that represent "feature synergy" and focus on shipping as much fantastic code as you can possible bang out. We need to be a swift reacting armada, not some bizarrely entangled super-tanker manifestation.

Sometimes, you've just got to say, "I don't give a flying %#@& about the Turkish 'i' today!"

The "10 Crazy Ideas" paper, the personal blogs that include work-life gripes, the employee negative comments within blogs, and the anonymous blogs like this one are "steam-blowing" representations of the increasingly growing discontent employees have with where our company is going ("...and just why are we in a hand basket?"). And I don't know about you, but I've heard zip and nothing from our leadership since the Oprah-esque Company Meeting 2004.


I wish that I had a webcam recording my more funny quizzical expressions, especially when reading Computer Science Graduates Turning Away from Technology. Whuu?!? Come on, outsourcing can not be consuming computer science jobs at that rapid of a rate, especially given the low quality programming results I've seen from overseas so far. I must be pretty out of it. Reading a snippet like this:

The research firm Gartner Inc. predicts that up to 15 percent of tech workers will drop out of the profession by 2010, not including those who retire or die. Most will leave because they can't get jobs or can get more money or job satisfaction elsewhere. Within the same period, worldwide demand for technology developers -- a job category ranging from programmers people who maintain everything from mainframes to employee laptops -- is forecast to shrink by 30 percent.

Somehow these numbers are also wrapped up in folks like us who do "Deep Code." What I accept as fact is that far fewer students are enrolling in computer science. I haven't come around to accepting it's a dead-end career choice to be relegated to the dank basements of the corporate world. I guess you need to make that decision for yourself. If you agree with that article then it sounds like if you have a chance to get out to do something else you're passionate about, you should give it serious consideration.


Finally, one theme that pops up quite often in folks who post comments here and say they used to be Microsofties but left and now work elsewhere is: life is so much better now that I don't work at Microsoft.

Personally, I love my job and I love my company. I'm just one terrified voice screaming from the back seat that we've taken a horrendously wrong turn into a bad, bad neighborhood (Cut Alley, Product-Slip Row, and naked emperors in .NET stockings on every corner - shudder) and need to turn this car around and get back on the right route.

But if you work at Microsoft and it's a burden and you don't feel like you're fairly compensated: look elsewhere. It doesn't take much effort to put your resume together and try to build some buzz around yourself. While you're working on your review, you might as well channel all that insight by creating your updated resume / CV, put it up on the web, and go around and talk to some local companies about what they do. Stick your head up and you might find a truly greener pasture for yourself that isn't that far away. Where-ever you might go, I can absolutely assure you that you'll attend less meetings.

And if you agree that Redmond (or wherever you are) isn't that groovy of a place for you, do some focused targeting of places you'd like to live and get the heck out of Salmonberg.

Sunday, June 19, 2005

Microsoft's 3.0 (or, How I Learned to Stop Worrying and Love The Curve)

It's that major review time of the year at Microsoft. Keyboards are clicking away with folks regaling their lead about all the great things they've done.

But is it too late for your review comments to make a difference? You've got to figure that everything is pretty much set within the stack rank in your manager's mind. A while back, I wrote about the stack rank and some advice about owning your career. The stack rank meetings are probably starting now and going on for a month or so. Can your proud lobbying move you up a position or two higher? Well, it might be important based on where the rating line is drawn for folks in your peer group.

You know after the stack rank something wicked this way comes: The Curve. We grade on a curve. Your rating is based on your ladder level expectations and relative to the performance of your peer group (a peer ordering most likely extracted from your position in the stack rank). Woe unto you if you're a super-star in a super-super-star peer group.

A curve, though? Actually, it's more like three buckets than a curve: bucket 4.0 (A! Sweet!), bucket 3.5 (B. Well, okay), and bucket 3.0 (C! Dang!). I don't bother considering the gold star (4.5) and the platinum star (5.0). And I don't want to bring up 2.5 because I'll get side-tracked.

4.0, 3.5, and 3.0 (oh my). The dreaded 3.0 is really two beasts in one: the well deserved 3.0 and the trended 3.0. While a manager might be steamed to have a 4.0 person be trended down to 3.5, they will go ape-poo-flinging-ballistic to have someone trended to 3.0. But we have buckets to fit and if your product team needs to provide 25% 3.0s you're going to have to fill that bucket.

I totally accept that we need to have a rating system, especially to reward our kick-butt super-contributors who end up doing most the hard work around here. I have not, however, come to accept the bucketing rating system we employ, especially around the 3.0 review score. Now then, I have met dev managers who have reached acceptance with our system and with dolling out the 3.0s. In their presence, I experience a cult-like allure to these folks as they tell me how they are totally behind the peer relative 3.0 review rating and that's how we do business in managing our performers. They make it sound so calm and simple that I feel like if I could just drink up that Kool-Aid I, too, could not rip myself up inside over this.

Some recent comments here about our review system and 3.0:

  • As a lead, it's one of the most painful experiences at work to have to give a review back to someone and say "you worked hard last year and accomplished great stuff...I can't tell you how much I personally appreciate it. However, the review model came back down the chain and the best I could do is get you a 3.5 (or *shudder* a 3.0)". Nothing kills morale faster. It assumes all cogs at all levels are equal with similar managers and similar circumstances solving similar problems with similar constraints. The truth is, the guy across the hall from you might have worked half-as-hard and still pulled a 4.0 because of how the model went up and down the chain. A good lead will fight, yell, scream, beg, cajole, and even threaten to get the scores he believes his guys have earned, only to have those scores crapped on by upper management and their curve.
  • I have recently been thinking it might be interesting to score teams on their effectiveness as a whole. If we did team reviews as well as individual reviews, and team scores affected rewards, managers would really scramble to get low performers off their teams. In this system, a 3.0 on a high performing team might get a better bonus and stock award than a 4.0 on a team that did a science project and shipped nothing.

    I'd like to know if the executives who run teams that are woefully behind (Yukon, Longhorn) get 3.0s when their products fail to ship.
  • Argument against is what if you really have seven 4.0 performers but the model says you can only give three 4.0 review scores? Well, if you are a weanie Mgr. you screw four people over....most get pissed but stay anyways and now join the ranks of disgruntled employees who are no longer passionate about their work. Work product begins to suffer, crappy products get shipped, who cares any more?? If you are a principled Mgr. you take on the system and go to bat for your seven key employees but invariably you will get shut down and most likely commit a career no-no...now you too are inside the bell curve.

Why all the angst over 3.0?

  • Because it's hard to figure out whether this is an earned 3.0 (slacker!) or a trended 3.0 (suckah!). The lead's feedback has to be written the same. You really can't go and write, "Garsh. I wanted to give you a 3.5 but they're making me dork you around with this 3.0." Nope. You got to write harsh feedback saying they are doing okay but these are the ways they could have done better. This feedback especially sucks when the report thinks they did a 4.0 job, relative to their peers even.
  • It affects your lifetime review score and makes it difficult to transition to a groovy group that is actually getting stuff done (like MSN - yeah, baby, I'll take anything new showing up on our customers' screen).
  • It represents "eh, you are doing what we asked of you, pretty much" review score. Good right?
    • We're not "good enough" people. I don't hire "good enough." When I am involved in hiring (the shame), I work hard to hire people smarter than me that I expect to zoom past me one day because they are so awesome.
    • 3.0? You most likely will get zero raise, zero bonus, and zero stock. Good job. Thanks to the increasing cost of living, you're working for less effective pay. And we just told you that you are indeed pretty much doing what we ask of you. What?
    • 3.0s are sticky.
    • If you're in a strong group, you have to rely on attrition to be able to move up (or hope some clunkers get hired). To really succeed, you need to move groups (which might be a bad move for our customers if your contributions to your current group really makes an important difference). But getting that other hiring manager interested in a 3.0 performer is trick-y.

So you go and follow Mini's advice over the past year and move-on all your poor-performing-process-loving-slack-ass-clunkers, get a tight, high-performing team together to take on the world and then... The Curve comes around and you realize, "Oh, crap! I've got to give out seven 3.0s and all I have are great performers now!"

Yes, it sucks to be you. You're about to flush away 25% of your team's morale for doing the right thing for the company and the shareholders.

So what would you do? Do you think our review system is in need of some tuning to make it equitable to morale and great software development? Or should we all just take the blue pill with a nice swig of Kool-Aid?

Humble suggestions I have include:

  • Increase the resolution on the curve. Instead of our A / B / C simplistic bucketing, bring on the 100 point scale and have a finer curve with appropriate compensation fitting in. Still lavishly reward your super contributors, yes. But don't go and bugger someone because they fell just within the 3.0 line. A 79's compensation should be very close to an 80's. A 70 would then be a strong message that we think you're just squeaking by.
  • Allow high-performing product teams to have a more gracious curve to fit. And don't make this gracious curve have to come out of another team's budget as a zero-sum gain. Last I checked, we have some pretty good profit that I'm sure would be a proper use of shareholder's money to reward the people that this continued profit depends on.
  • Punish poor-performing teams with a harsher curve. Don't ship? Have a bunch of bugs? Customer concerns not being addressed? Security breaches created by this team? Then maybe 50% of your team gets 3.0s and we want some percentage of 2.5s.
  • Figure a way to associate poll-results with management compensation / management curve shape.
  • Always at least meet regional cost-of-living increases. It's unacceptable for this company to pay someone "less" this year than last and to tell them that they are doing a good job of what we've asked them. It just makes me want to unionize.
  • Consider a split review rating for individual contributors: ladder level specific and peer relative.
  • Bring back the minor review in winter. Summer shouldn't be an all-or-nothing compensation event. When it comes to administration and process, I put just as much work in for the mid-point as I do the major review. It's not worth any cost-saving, company process-wise, to not have a minor review.
  • Figure out a way to avoid the automatic 3.0: "Hi, you're new to the team. 3.0." Here we are, considering how hard it is to hire for Microsoft, and then what happens during your first review: 3.0. No soup for you! We'll give you another year to prove yourself. Suckah!

Usually, I'm no fan of HR tinkering with our review system. They've certainly cheesed me off with all the bizarre review form iterations over the past few years. However, an honestly compensated work-force leads to motivated contributors with high morale making great features for our customers and giving us a good chance to raise the value of our stock.

Then, if I realize that I'm a super-star on a super-super-star team, I will still put in the extra effort knowing that it is actually going to be recognized and worth something (versus easing back and asking, "Why bother? I'll get the same review no matter what I do.").

That's worth some class-A tinkering to make happen.

I LOVE this company, but I hate The Curve. This is not how the great teams we do have should be rewarded. I certainly feel that if a morale-busting brain-dead review systems goes on too long, we might find ourselves with barely motivated contributors creating mediocre features that may or may not ship...

Tuesday, June 14, 2005

Arrogant in Redmond

So I snagged a copy of Redmond Magazine out of the recycle bin recently (bad habit) and it happened to be the one with the Microsoft Survey. Hmm. Interesting read, it's always good to have an outside take on Microsoft from our customers and partners. Be sure, if you read the article, to go to the end and download the PDF summary. I'm sure anyone who has taken a class in constructing surveys would sneer at the leading bias in some of the questions ("Would you like to see a thinner version of Office."). How about adding, "Would you like a milkshake with your thinner version of Office, too?" Anyway, some of the interesting bits:

  • We are arrogant.
  • Thinner client applications are desired.
  • We are good for the computing industry (Whuuu!?!)
  • Software Assurance program is Mr. Angsty pants.
  • Linux and Microsoft are perceived as Microsoft's biggest threats.
  • Our products are overpriced.
  • It would be swell if Microsoft applications ran on Linux and Solaris.
  • Barely no one owns Microsoft stock, but they think it's a good value (for, ah, someone else).
  • Folks wouldn't mind working for Microsoft.
  • Hegemony - gooood!

As I was thinking about the concern over arrogance, I was reading through comments in Ms. Gretchen's rant about hiring managers and then follow-up to the attention it gathered. Arrogance comes up left and right in the first post: Microsofties calling each other arrogant and folks being interviewed calling us arrogant. I like this comment:

Whoever said "arrogance" hit the nail on the head. I recently had a couple of interviews with Microsoft, and thought all the rumors about "arrogance" were just jealous people who'd been turned away. Then I hit interview number three... The oozing of machismo and 'my wee wee is bigger n' yours' pretty much left the foul taste in my mouth. I essentially realized that this wasn't the place for me since I eat arrogance for lunch, and began to toy with the interviewer, just for the sport of it.

So what do you think the action items are to deal with Microsoft's ever present arrogance problem is? Plus other customer's concerns? We do really well at listening, it seems, but then do nothing (kind of like talking about features, then cutting, and shipping nothing).

As for a couple of other things... my last comment here about Gretchen's rant concerns folks not wanting to come live in Redmond. I'd be interested in knowing how this breaks down between new college grads and experienced hires. For folks just out of college, my only insight is: if you're unattached and unencumbered by responsibilities the last thing you need to do is go work for a large, slow moving corporation in the 'burbs. Take risks and live the crazy big city life and blow your youthful energy laying down effort on the big pay-off opportunities. You will learn more and do more than you can possibly imagine, especially compared to being placed as a new shiny cog in the corporate machine (where all you can say during your first review is, "And what does this 3.0 mean?"). Then come knocking on the door of the corporate beast in the idyllic, moist, family friendly Pacific Northwest . Or, ideally - if you've really busted a fantastic trail for yourself - coyly answer the hungry calls of a groovy chick named Gretchen.

Lastly: no, I don't know what bad thing happened at http://microsophist.blogspot.com/ . Though I will say there's been more than a couple of times over the past year that I've stood up after a day of pulling weeds or other satisfyingly sweaty work and considered just deleting this blog outright (404 for me - poof!). Usually I think that way near mortgage payment time.

My conscience chides me, "Wha? You have it so good! Why you want make trouble?" (for some reason, my conscience sounds like Margaret Cho's grandmother from All-American Girl. Go figure.). There's bitching and complaining, and then there's making a difference... ah, well. Post.

 

Monday, June 06, 2005

Bob Herbold, The "Fiefdom Syndrome," and Bob's Message to Microsoft

While lobbying for some cross-team feature political support in one of the prettiest cafes on campus (34, what a view) I noticed a setup for a presentation. I wandered down and saw it was for Bob Herbold, swinging through campus to talk about his book, The Fiefdom Syndrome. Free chips and candy bars? Plop.

So Mr. Herbold begins a very nice presentation about how business groups grow and then stifle progress by continuing to produce work and process to justify their ranks. These groups are especially prone to sticking with old methods that require lots of process intensive labor, vs. switching to new or disruptive approaches that promise to save time, money, and require less people. Lots of real world examples, some even based on his time a Microsoft bustin' up stagnant groups. I was so intrigued I ended up laying down some cash and reading the book. More on that below. First, let's have the dessert of this post.

During the Q&A, a young lady asked Mr. Herbold how all of his principles and insight would apply to present-day Microsoft. Bob took a pause and showed restraint mixed with reluctance. He apologized for his answer being vague, but basically he said, "Microsoft has hired lots of people since 2000. It's unclear to me what their level of focus is."

My inner self's eyes sproinged all big and anime and clasped its hands to a throbbing heart, sighing, "I'm in luuv puppy luv!" But then Bob stopped there and didn't take the assessment much beyond its promising beginning. Tease.

So Mr. Herbold isn't outright calling for massive layoffs and reorganizations at Microsoft, but his book does cover how you have to look out for parts of your organization that grow and then put intensive effort in to justify their current size and even try to grow more. Much like a zealous GM or VP out to create busy features or absorb other teams when the right thing to do is actually downsize their team to something manageable (or to break-up the team entirely).

Here's one of the biggest so-common-sense-it's-not-common-sense observations I got out of the book: smart people figure out quickly how to succeed and be rewarded in their group. Chapter two is all about human nature. People don't typically get rewarded by being disruptive pains in the ass but rather getting along to get along and further up the compensation ladder.

Sounds simple. Sure enough, if you are rewarding people for demonstrating that they excel at process excellence then, well, Hell, forget if you actually ship features. Look at all these pretty, beguiling graphs about promising features! And fetch me a crop of dithering middle managers! If you openly reward and promote people for killing work by bemoaning the risk and the testing cost and localization impact of each feature and interrogating a DCR as if it were Dan Brown shackled in-front of a wild-eyed, hot-poker wielding Pope, well, everyone is going to grab pitchforks and jump on that "No can do! No can ship!" bandwagon.

It makes me think of how many feature meetings I've had and what a small percent of those features have actually ever shipped. Not that every feature is a good idea, but it's damn near wake-worthy sometimes for a feature to actually get out into shipping bits. Que Eeyore: "Oh no. Now we have to support it. I suppose a hotfix request will come in any moment now..."

Anyway. Other interesting bits I'd like to call-out in the book...

Fiefdoms are bad. They result in stifled organizations that freeze up and let competitors breeze on by. They lead to inefficiency and ineffectiveness, reducing market share and profitability. They breed mediocrity.

The folks in charge of the fiefdoms jealously guard their high-performers, not letting other groups know about the people they value most, less that fiefdom lose a key contributor (to whom they might give so-so feedback to). Folks gravitate towards a comfort zone and stridently maintain the status quo. Once another leaner, meaner innovative group or competitor comes along, the fiefdom plain can't compete and while it might save a little bit of time from obsolescence via plain mean business or political tactics, the folks who snuggled down into the comfort zone and jellified themselves to mediocrity usually end up out of a job.

I like this observations (pg. 82 [hardback]): "If you leave people in the same job for too long and allow them to become too comfortable, without encouraging them to grow and learn, they lose the capability to renew themselves and think about alternative ways to get the work done. They become a liability for the company rather than an asset."

In chapter four, he recounts a company that started measuring "good" and "bad" attrition. I'm pretty sure he means Microsoft because we started that given all the good people leaving the company and all the bad clunkers we really need to fire but don't seem to have the gumption to. Usually when Bob talks about Microsoft he calls us out specifically. Not here. Also in that chapter he mentions the "360 assessment." I think everyone who has been at Microsoft for five years should get a lightweight one of those as a reality check.

Interesting at the beginning of chapter five where Bob mentions all the points of the company where it "touches" customers and consumers that he doesn't mention product support (e.g., PSS). Curious. Given the recent horror stories coming out of our gutted support group, I guess you can see an executive leadership pattern of disdain for support ("Oh, let them Google-it, I mean, Butter-fly it - well - MSN search it - grr, you know what I mean.").

Oh, lowlytech.com, how are things nowadays?

I'm back to luuv in chapter six on the section "Fiefdoms and Six Sigma." When you're dealing with people shooting you with process arrows and telling you all the reasons why we can't ship a feature, it's always nice to have a quote like "'Why didn't you tell me that we weren't interested in exciting the customer, that we're interested only in making this thing risk-free and cheap?'" ready to go. Oh, dang, that could be applied to so many circumstances here. And this just feels like Courvoisier slipping around my cortex when I read it, "The mistake the CEO made is that he created the perception that the company's primary objective was excellence in Six Sigma as opposed to excellence with their customers."

Reorganization plays a part not only in bustin' fiefdoms but also ensuring that they never form. I've got notes all over chapter eight, "Fostering Creativity," and I could quote it to an extent that I'd feel guilty of retyping most of the chapter. Oh, but there are some goodies in here, like: "What fiefdoms do is constantly load people down with excess training and communication, handicapping them with the mediocrity that the group has become comfortable with. Strong performers tend to see what's going on pretty quickly and work to get out of that environment." Ba'zing! Lost any strong performers lately? And how much process do you have to deal with given just three or five years ago? Lots of videos to watch as part of complying?

Section five of this chapter is "Don't overcomplicate the process" and it's super-duper great. As is the next, "Focus on customer needs, not meetings and memos."

  • "...you can't develop a process to generate innovation."
  • "[Process meetings] were eating up big chunks of time."
  • "...the focus of the discussion has to be on understanding consumers, probing for areas of consumer dissatisfaction, and looking for areas where you can surprise consumers with new capabilities."

In the end: any process you have needs to have its end result around generating something great for your consumers. If your process doesn't benefit your customer, what the hell good is it? (my, ah, paraphrasing.)

Curious note about BillG (pg. 72): "Bill Gates constantly looks for problems. He looks at everything that happens on a day-to-day basis and asks what Microsoft needs to improve upon." I'd love to know some of his answers to this as of late. Because the way things are looking, he must be considering some damn peculiar questions.

Do I recommend the book? Yes, if you're out to bust some fiefdoms up. There is lots of damning measuring sticks you can pull out from this book, and probably it has a tad more cachet than most business books given Mr. Herbold's personal association with the company. What are some of the lessons I think that applies to Microsoft and its product divisions:

  • We need reorganization bad. And we need to reorganize into smaller, leaner, meaner groups.
  • Process that doesn't briefly answer the question "How does this benefit our customer" has to be dropped.
  • Get rid of your middle managers. Okay, I slipped that one in. But, like Christine Gregoire saw, if you have a bunch of middle managers, you probably have a bunch of bureaucratic process requiring their presence to keep shuffling information around. Get rid of them and the process at the same time. Gov. Gregoire has 1000 middle manager positions up for elimination. I bet we can meet that!
  • Strong performers get screwed if they end up in a fiefdom. Your bosses don't sing your praises, worried that someone might try to steal you away to their group. If you've read this far (wow!) one thing you need to do when you show up at work is assess if you're stuck in a fiefdom. If so, and you're not able to break it apart, get out. Just imagine the voice in the Amityville house has finally managed to whisper in your ear, "Get out!"
  • You need to switch jobs and responsibilities before you get comfortable doing what you're doing and start down a one-way path of career atrophy. Microsoft used to force this through reorganizations. But people are snuggling down, like ticks.
  • And going back to Mr. Herbold's hesitant observation during his presentation: yes, Microsoft has indeed hired a lot of people since the year 2000 and their focus, and their purpose, is very unclear. Would we have shipped Longhorn any later with less people? Nope. Probably sooner because we wouldn't have dreamed of doing all that dumb-ass CLR-based stuff that ended up being cut. Does Office need all those people to add a reading view to Word? We can get by with so many less people, because at the end of the day, it's the super contributors responsible for most of the features that get designed, implemented, tested, shipped, marketed, sold, and supported.

At least roll the payroll numbers back to year 2000 levels. Let Gretchen focus more on firing hiring managers vs. having to rant about their spoiled, whiny ways. Let researchers go back to working for colleges and mentoring future generations of software developers. And bust the stagnant mediocrity we've snuggled into and get out there and start wowing consumers with delivering what they want, need, and didn't even know could be done.