Seiten

Saturday, September 4, 2021

Book review: "The manager's path" by Camille Fournier

Management 101

  • Manager care for their people, help them to grow, enable them
  • 1:1s are essential
  • Two purposes of 1:1s:
    • Create social connection
    • Speak about whatever needs discussing
  • 1:1s are NOT a status meeting => use email for that
  • Give behavioral feedback asap in your 1:1s - Good AND bad
  • Make the worker feel valued

Mentoring

  • Tips für mentoring summer interns
  • Hiring interns

Tech Lead

  • Definition: Good coder, that also represents group to management vetting plans for feature delivery
  • Tech lead is not a point on the ladder, but a set of responsibilities.
  • Tech lead is not necessarily the most experiences dev in the team
  • Sometimes you find process czar. These people are highly skilled.

Managing people

  • Four areas to manage people:
    • 1 on1 s
    • Feedback on career growth
    • Praise as warranted
    • Helping reports to grow
  • Onboarding: Have a 30 / 60 / 90 day plan
  • 1 on 1s should be scheduled weekly
  • Good description of 1 on 1 styles
  • Goal setting is important. Do it frequently.
  • Do 1 on 1 s more frequently when there are problems
  • Mention good or bad things immediately
  • Get to know the people.
  • Set clear goals / also for the teams
  • Establish standards for code and systems (See tech radar)
  • Continuous feedback process is important, but does not replace 360 degree feedback
  • Some really good examples for 360 degree feedback
  • People that got potential show their potential. When people can't show potential they likely won't have it in your organization.
  • Interesting: Many people fire employees that can't progress over their first two levels (Junior / Professional).
  • Expect people to act on the next level before promoting them (avoid peter pricinple)

Managing a team (engineering manager)

  • Engineering leads to manage teams
  • Guidance of people is important (more important than tech likely)
  • Technical knowledge is important and will give you credibility - don't go into management too early in your career
  • Good advice to debug problems in teams
  • Brilliant jerk vs negative jerk. Get rid of the negative jerk.
  • Don't let your people do overwork
  • Shield team from distraction but don't keep everything from them
  • Create data driven team culture
  • Psychological safety is important
  • Teams that are friendly are happier, gel faster and tend to produce better results!
  • Some simple rules for project management
  • Plan in an agile way.
  • Say no

Managing multiple teams

  • Director of engineering manages multuple engineering teams
  • Reaching that role takes 10 years (including university education)
  • Not much coding - but important being able to debug teams
  • Prior coding experience is important
  • Know the difference between important and urgent
  • Delegate simple and frequent tasks
  • You must be able to see when people want to quit
  • Say no in a nice way - "Yes - but we have to delay another project"
  • You need to know how to see if a team ships code and if it is healthy
  • You are responsible for keeping your team health and productive
  • Help team to break things down into small chancs
  • Track the frequency of incidents
  • Find a good balance between fast releases and stability
  • Work in a clever way - but make sure to not burn out

Managing managers

  • Managing managers is hard
  • You have to go out and find the information. Open door policies do not work
  • Have 1 on 1 s - but also skip-level meetings
  • Make meetings with every member of the organization (as long as you can do it)
  • Many good questions for driving your 1 on 1
  • If skip level meetings don't work any more do lunches with your teams!
  • Hold managers accountable!
  • Don't hire people pleasers
  • Coach your managers!
  • Busywork is a sign of a failing manager
  • Fire managers on power trips
  • Managers are in charge to fix things - and make the team focus on goals
  • Remove failing managers asap
  • Hire managers for cultural fit!
  • Try to hire internally for cultural fit!
  • Interviewing managers is hard - they can bullshit you easily
  • Role play a difficult 1:1 with a management hire
  • Role play eg a team member that wants to quit the company
  • Culture allows you to make decisions in uncertain environments
  • Do reference checks for managers (even if they give you the names
  • Watch our for boring meetings - that should not be the case
  • Estimation of large projects is a very valuable skill
  • Spend 20% of your time for sustaining engineering (removing tech debt)
  • Attend post-mortems!

The big leagues

  • A manager has to do four things (High output management, Andy Grove)
    • Information gather and information sharing
    • Nudging (remind people of their committments)
    • Decision making
    • Role modeling
  • Multiple VP Engineering that own different parts of engineering is possible
  • VP Engineering focuses on execution - CTO on business strategy
  • VP Engineering does:
    • Roadmap and hiring plan alignment
    • Plan how teams need to evolve
    • Work closely with recruiting and hiring
    • Coach to engineering management team
    • Work with HR to provide training
  • CTO: The CTO should be the strategic technical executive the company needs in its current state of evolution
  • CTO focuses on recruiting, retention, process and people management!!!
  • CTO should have reports - otherwise it is hard to be effective
  • As CTO / VP Engineering make sure that top down changes can be done by your teams - or argue otherwise
  • Change direction when stuff goes wrong
  • Some good advice how to deliver bad news
  • Communicate in simple terms
  • Your presence will distort discussions - it is likley not a good idea to mingle with your team
  • Keep cool when things go wrong. Don't get angry. Don't blame people.
  • Set the true north. Clear expectations for quality and results.

Bootstrapping culture

  • Lack of structure creates hidden power structures
  • From race cat to commercial flight to a starship - evolution of a company
  • Start with a simple system
  • Culture are the generally unspoken shared rules of a community
  • Desiging career ladders is hard! (and good advice how to write them)
  • Do post-mortems
  • Do code reviews
  • Do architecture reviews if things change

Verdict

Excellent book. Must-read for anyone that wants to move into management of a tech company!