I. M. Wright’s “Hard Code”

An opinion column for developers.Brutally honest, no pulled punches.
Posts
  • I. M. Wright’s “Hard Code”

    Too much of a good thing? Enter Kanban

    • 0 Comments
    Last month, I wrote about the value of good program managers (PMs). Some people liked the column (mostly PMs). Some people hated it (folks with bad PMs). However, the most common response was that Microsoft has too many PMs. Can you have too much of a...
  • I. M. Wright’s “Hard Code”

    PM: Secret weapon or wasted headcount?

    • 9 Comments
    Microsoft is one of the few software companies that uses program managers (PMs). PMs, developers, and testers form the infamous engineering triad. Together they prioritize and cost features, triage bugs, and make design decisions. Now that highly agile...
  • I. M. Wright’s “Hard Code”

    Permanently high plateau

    • 0 Comments
    A friend asked me recently about one of his reports. He had a few concerns going into annual review calibration. His employee was a smart, strong, consistent contributor, well beyond entry level and independence (see Level up for reference), but he had...
  • I. M. Wright’s “Hard Code”

    Hired helpers

    • 2 Comments
    There are never enough resources to complete our ambitious plans, so Microsoft is constantly hiring help—vendors and contingent staff (CSG). Full-time employees (FTEs) are hired too, but the relationship is different—at least it’s supposed...
  • I. M. Wright’s “Hard Code”

    Don’t be a tool

    • 4 Comments
    A recent flood of build breaks triggered a wave of tool suggestions to plug the cracks in our code. Some argued for faster builds. Some argued for deeper branching. Some argued for a “gauntlet” service that simulates official builds and blocks...
  • I. M. Wright’s “Hard Code”

    Out of focus

    • 0 Comments
    Are you sensing a rush coming as we complete midyear career discussions at Microsoft and head into the stretch toward annual reviews? Worried about keeping up with your peers when you already have far too much to do and far too little time in which to...
  • I. M. Wright’s “Hard Code”

    Software engineering—what’s missing?

    • 6 Comments
    To start the new year, my boss gave an all-hands speech to a large group of developers about being an engineer. He equated being an engineer with taking responsibility for quality and using methods that ensure high quality at checkin ( Nailing the nominals...
  • I. M. Wright’s “Hard Code”

    Who’s in charge here?

    • 0 Comments
    I was talking with a friend from another Microsoft division. He complained about gridlock on his team because “no one can make a decision.” He lamented, “We discuss issues and come to some conclusions, but rarely get a resolution that...
  • I. M. Wright’s “Hard Code”

    That's not funny

    • 0 Comments
    Tension fills the conference room a few weeks before the Client release. The Client team wasn’t told that the Database team had added a parameter to the AddClient API. The Client broke spectacularly—the latest in a series of miscommunication...
  • I. M. Wright’s “Hard Code”

    Destabilization

    • 1 Comments
    It breaks my heart and sickens my stomach to witness the tremendous productivity and quality gains of Lean Software Development practices at Microsoft: feature crews in Office, scrum teams in Xbox, and improvement teams in SQLServer, to name a few. These...
  • I. M. Wright’s “Hard Code”

    Master of your domain

    • 0 Comments
    If you had to choose between hiring an outstanding candidate with only related domain knowledge and a solid candidate with specific domain knowledge, who would you select? At Microsoft, we generally select the outstanding candidate, figuring a talented...
  • I. M. Wright’s “Hard Code”

    Production is a mixed blessing

    • 1 Comments
    There is one service design flaw that engineers repeat day after day, month after month, year after year. Scalability? Nope, though it’s popular. Security? Happens, but not that frequently. Serviceability? Getting warmer. Give up? Don’t care...
  • I. M. Wright’s “Hard Code”

    A change would do you good

    • 5 Comments
    Few Microsoft engineers change positions between mid-May and mid-August—they don’t want a role change to adversely impact their annual performance ratings, which lock around mid-August. Of course, managers shouldn’t allow position changes...
  • I. M. Wright’s “Hard Code”

    Out of calibration

    • 8 Comments
    It’s calibration time at Microsoft. Time for managers to rank everyone in your peer group (same discipline, same career stage, same division) into five (and a half) ranges: the top 20 percent (and top 5 percent), the near top 20 percent, the middle...
  • I. M. Wright’s “Hard Code”

    Quality is in the eye of the customer

    • 3 Comments
    Not every bug is the same. A bug that frequently freezes an app gets more attention than an extra line of green pixels in a border. An embarrassing typo in a prominent feature is more urgent to fix than an inappropriate exception thrown by a misused API...
  • I. M. Wright’s “Hard Code”

    Test don’t get no respect

    • 15 Comments
    I love Microsoft®. We’ve been together happily for many years. If you’ve been in a healthy long-term relationship, then you know what this means—there are things about Microsoft that make me curse, stomp, and spit. I’ve learned...
  • I. M. Wright’s “Hard Code”

    You have to make a decision

    • 1 Comments
    What’s worse—a flawed decision or no decision? That’s easy. Decisions keep a business moving. An imperfect decision might move your business slightly in the wrong direction, but at least it will be moving. Make a few adjustments, and...
  • I. M. Wright’s “Hard Code”

    You're no bargain either

    • 2 Comments
    “Can I talk to you about Bozo? He gets on people’s nerves. His communication style causes trouble. He’s bringing the whole team down. He’s a freaking clown.” If you’re a manager, you’ve probably heard this before...
  • I. M. Wright’s “Hard Code”

    Cycle time—the soothsayer of productivity

    • 4 Comments
    Nothing infuriates me more than wasted time and wasted effort. I’m not talking about training, reorgs, moves, morale events, or vacations. Those at least have the potential to be valuable in your life. I’m talking about build time, integration...
  • I. M. Wright’s “Hard Code”

    Individual leadership

    • 1 Comments
    Want to create a noxious gas? Combine ambitious yet clueless engineers, a flat functional organizational structure, and the upcoming midyear career discussions. Soon toxic fumes will emanate from individual contributors (ICs) in response to impotent explanations...
  • I. M. Wright’s “Hard Code”

    There's no place like production

    • 4 Comments
    As much as I love Microsoft®, and as many advantages as we have as a company in the intelligence of our people, the breadth of our products, and the boldness of our vision, there are times when people here are frigging clueless. It’s not everyone—Microsoft...
  • I. M. Wright’s “Hard Code”

    Am I bugging you? Bug Reports

    • 2 Comments
    Some developers hate seeing bugs. They think bugs indicate a failure on their part—that their code seemed perfect until bugs were found. These developers are called “amateurs.” Real developers know the only reason you haven’t found...
  • I. M. Wright’s “Hard Code”

    You can depend on me

    • 1 Comments
    We’re getting into the end game before a big release, and I’m already tired of people whining about unstable and overdue dependencies. Of course they are unstable and overdue, what planet are you from? Yeah, yeah, a package should only...
  • I. M. Wright’s “Hard Code”

    Making the big time

    • 0 Comments
    Review time is almost over. Maybe you got promoted. Maybe your head is filled with thoughts of making it to the big time—calling the shots, getting paid, and having everyone hang on your every word. For entry and independent ICs, that means being...
  • I. M. Wright’s “Hard Code”

    I messed up

    • 2 Comments
    Ever make a bad mistake? One that makes you feel like there’s a hollow in your chest—you know you’ve messed up badly. Maybe you were even trying to do the right thing, but it just ended up wrong unintentionally. This happens to me regularly...
Page 2 of 4 (87 items) 1234