Items tagged with

The Seamy Underbelly of MicroGoogleSoft

I’ve often wondered how well Google’s management structure works, particularly the high engineer-to-manager ratio. I’d always heard it was about 50:1, but this blog post I came across yesterday suggests ratios of 100 to 1 are not uncommon. Now that’s flat. Superflat. If you have the urge to peer into the murky depths of Google or Microsoft, give the post a read. (Yes, it might be a hoax, but personally I think it’s legit. Besides, hoaxes are people too.)

Management structure differences aside, Google really is a great deal like Microsoft was in its earlier days. It’s as if the same parents decided to have another baby 15 years after their first one. Same DNA.

As usual, the comments provide some of the most compelling nuggets. There is a bunch of good meaty stuff once you get past the initial chorus of “why we oughta fire that two-timin- free-breakfast-eatin’- NDA-violatin’- internal-email-leakin’- big-fat-secret-sharin’- son-of-a-!*@# employee!” comments from ’softies. This one particularly resonated with me:

…Many folks at both places seem to harbor a desire to start their own company ‘at some point’, and virtually no one at either place seems to be fully satisfied with the pace of their career growth, but the benefits and continuous train of internal opportunities keep most of those folks happy and entrepreneurially sedated.

Both are probably great places to work, especially if you can reconcile yourself to a nice, comfortable, interesting career, and you have the willpower to prioritize family over work and work email. For those who aspire to more, you’ll need to innoculate yourself against the sedating effect of the benefits and ‘industry influence’, get it [sic], build up some experience and a network, and get out.

Amen, brutha!

Yegge Writes About How Google Works

Google’s Steve Yegge wrote a lengthy critique on Agile development about a month ago. The piece is ostensibly about agile development, but it’s really more about how Google works and why it doesn’t need capital-A Agile methods.

My favorite bit: “developers can switch teams and/or projects any time they want, no questions asked; just say the word and the movers will show up the next day to put you in your new office with your new team.”

Sounds like fun. It’s not something every company can do, though, especially not well-established ones. The way I see it, this amazing degree of freedom stems from two particular luxuries.

Luxury #1: Incredibly deep pockets. When you’re flush with cash you can hire the best and brightest, and reward them heavily. Google is so rich that it can spend disproportionately on acquiring and retaining talented people, even when going head to head against its richest competitors. And its business model is so highly profitable — again, compared to competition — that it should be able to continue doing this indefinitely.

Luxury #2: Very few dependencies. Google delivers software straight to the web and millions of largely nameless customers, rather than into the hardware production pipelines of a handful of OEMs or the IT integration pipelines of a few thousand corporate clients. That’s why they can pick and choose what to build, and when to ship it, if ever. That’s why they can label products as “beta” in perpetuity if they wish to: their customers aren’t yet demanding any more than that. And that’s why Google developers can vote with their feet on which projects to work on: at the end of the day, there isn’t a customer on the phone line holding them accountable for a slip in the schedule of Project X.

Lucky ducks.