Zod's Axioms: 10 Principles of Engineering Management

Years ago when I was just starting to figure out how to manage, Zod Nazem, the CTO of Yahoo, held an engineering management summit and at the end of it he presented his 10 management axioms. Background for those who don't know Zod, he's absolutely brilliant, tough as nails and one of the best leaders I've ever seen or worked for, but he's not the strongest public speaker. This day was the exception, people were blown away with his axioms.


That hour had a profound impact on the way I manage (and I expect much of the Yahoo engineering leadership in attendance that day). I've been meaning to write this blog post for years but instead kept spreading this philosophy byword of mouth.  Finally I've gotten them down and I want to thank Zod for looking over it to make sure I stay true to his original intent.  These are all short and pithy sayings, and all of them seem like common sense, but as I've stated, you need to go beyond knowing your principles and master them.

Without further ado, here are Zod's axioms.

1. People don't change.
2. People can learn to become better "actors"
3. Under stress people revert back to their true self

I put the first three together because I think 2 and 3 are corollaries of #1 and they all refer to the intrinsic nature of people. I had an employee who was a terribly long winded communicator.  It just wasn't possible for him to get to the point in less than 30 minutes (and he always cornered me as I was headed to my car).  I worked with him on being more concise for years, and over time when he focused on it he was able to "act" as someone who was a better communicator.  But when the pressure was on and a big decision confronted us, the old habits came out and all the work we did was out the window.  Fortunately, he was a brilliant coder and concise communication wasn't a large part of his job.  Often times, the brilliant coder who communicates poorly is pushed (or pushes) to move into a management role where communication is a critical skill.  Had I done that with this guy it would have been a disaster.  I want to draw a distinction between intrinsic characteristics and skills.  Any good programmer can learn a new programming language as that's simply a new skill.  But people come pretty hard wired on their underlying intrinsic characteristics, and many a manger has foolishly tried to change people when they need to accept that they can't.  People are intrinsically organized or not, prompt or not, lazy or not, high energy or not.  Needing someone to change on a dimension like that is a recipe for failure. 

4. Make quick decisions knowing you will make mistakes
One of the best ones on the list.  Your job as a manager is to make decisions.  You will never have complete information, and in fact part of the skill of your job is making strong decisions in the face of ambiguous information.  Time estimation, Promotions, Strategy calls, Architecture decisions.  You'll get some wrong, and fix them quickly, but the best managers make decisions quickly.

    5. When it comes to compensation, don't be a communist.
    Your best employee at a given level performs 5-10x better than your worst employee at a given level.  I call them 10xers.  But that best employee is still only paid 10-20% better.  Almost no company has the compensation practices to deal with that (Netflix claims they do (slide 97), and from what I've seen, they might).  So when the company 3% raise pool comes to you, don't be a communist and spread that evenly to all of your people, give almost all the money to your stars and give no raise to your bottom 30-40%.  Will that hurt their morale?  Perhaps, but it's so critical to keep your stars happy, and you really don't have enough cash to give them, so you've got to take it from somewhere.


    6. Spend all your time removing roadblocks from your stars
    So many new managers think they can fix their bad employees.  They spend hours with them coaching, pushing and trying to make them better.  That's a mistake.  First and foremost, I think it's the employee's responsibility to figure out how to excel in the company, the manager is supposed to define his responsibilities, give him the tools and opportunity to be successful and hold him accountable.  Further, at best you'll make  your poor performer a bottom of the barrel acceptable performer, but investing the same effort in your stars you can move them from a 5xer to a 10xer by helping remove the obstacles.  Get approvals for them, software/hardware they need, decisions made, cross org support, etc. etc.  If there's something blocking a star, that's your top priority. 


    7. You are only as good as your lieutenants
    You're probably a fantastic developer/architect and you can probably do the work of your team better than they can.  But you can't scale, you will always only be able to get one person's work done.  It may be 10x as productive as low performers, but you'll never get the work of 100 people done.  So you need to have lieutenants who can take the direction and skill you've got and apply it more broadly than you can.  And if you have great lieutenants, they'll push you up and take over work that you had been doing allowing you to focus on the next bigger problem.  And if they're bad, then they'll pull you down to do their job for them.  And when you're doing the job of your lieutenants, you have no capacity to take on more and scale further, so you're stuck.  Once you really start to embrace this, you'll start hiring people who are better than you, an intimidating but tremendously important step to make.



    8. If you are not failing, you are not trying hard enough.
    I tend to reword this to "You'll do your best work when your uncomfortable with your situation."  I'm a skier, and when I was learning to ski, I fell all the time.  That's the only way to get better, you have to push yourself into a situation that you aren't comfortable handling and do your best with it.  You'll screw up, make mistakes and hopefully learn from them.  So if in your professional life, you don't ever fail, that means you're being too conservative and not putting yourself into the uncomfortable situation.



    9. If you are behind the competition, change the game.
    Back in 1998 Goto.com was an also-ran search engine that was way behind Yahoo, AOL, Altavista etc. (pre Google).  They were overrun with spam and generally a pretty poor service.  They changed their model from trying to have the best search results to ranking results based on how much each bidder paid.  This was the creation of the paid search market which Google now earns billions from each year.  Goto morphed into Overture and got bought by Yahoo.  But instead of trying to beat the established players at algorithmic search, they decided to play a different game that they could position themselves to win in and then everyone was playing catch up to their game.


    10. Don't pass your garbage to your neighbor.
    If you have a low performer on your team, you are not allowed to transfer them to another team.  You must fix your own problems, either by performance managing them until they perform better, or by working them out.  It's so easy to just let a poor performer transfer, and big companies do this all the time, but it's death.  Before 2006, a poor performing teacher in San Francisco could jump to the top of the line above qualified candidates to transfer into a different schools.  So Principal's were left shuffling the "lemon" teachers around until the law was passed.  And we wonder why so few people want to send their kids to San Francisco schools...

    And that's it.  10 pithy rules to manage by.  I've added a few others to my list (another post) but this is a pretty good basic starting point on how I try to operate.

    Share this post!

    Bookmark and Share

    5 comments:

    Naveen said...

    Great post. I must say that it is not easy to follow them in real life but you can if you keep reminding these to yourself.

    Dr. Eric Beam said...

    Great job Boyd.
    Now I fully expect a follow-up on General Zod's Principles of leadership.
    AEKDB

    http://askdreric-schoolpsychologist.blogspot.com/

    Michael Raybman said...

    This is a really interesting post, but I think that to #1, people can change. Perhaps they can't be forcefully changed by other people, but if they really want to work on themselves and change, they can.

    I don't have Zod Nazem's management experience, but I've known people who have changed dramatically with years.

    Eric Boyd said...

    Michael, I tend to agree with you, but remember that the point of this is advice for managers. As a manager, it's simpler to think that people can't change, because as you point out they can't be forcefully changed by other people. And the number of managers who fall into the trap of thinking they can "fix" their employees from traits that are pretty ingrown is very large.

    Definitely not intended to discount people changing themselves, but that change is very hard, must be self motivated, and takes a long time.

    Anonymous said...

    I also agree with Michael Raybman. People do change. From a management perspective, we must acknowledge this fact. A low performer can become a top performer. However, I believe a more truthful statement for managers would be to state "People cannot be changed. People change themselves."

    Many managers may spend too much time trying to change people instead of helping them manage their own success.

    Post a Comment