“The Staff Engineer’s Path” by Tanya Reilly

Written by

in

,
  • Staff engineering is ambiguous; companies are still trying to figure out the role
    • Levels below are for growing autonomy
    • Levels above are for growing impact and responsibility
  • “humaning” skills
  • Titles signal the quality of the person you are working with
  • Pillars
    • Big picture thinking
    • Project execution
    • Leveling up the org
  • Avoid “local maximum” to ensure paths are best for the whole org
  • TPMs focus on high-level coordination
  • https://www.levels.fyi/?compare=Microsoft,Amazon,Expedia&track=Software%20Engineer
  • “Leadership” is not a distraction from the job, it is the job
  • Management is different from leadership
  • https://kind.engineering/
  • Make sure to understand [and clarify if necessary] your scope
  • “You don’t stay in your lane”
  • Question: Depth or breadth first
  • Things needed
    • Skills
    • Project management
    • Product management
    • People management
  • “Everything you do has a high-opportunity cost”
  • “You don’t plant grass in your only barrel”
  • Ask, “What do I do here?” then document it; review with your manager
  • Maps
    • “You are here”
    • Topographical
    • Treasure maps
  • “Respect what came before”
    • (There is a fine balance between respecting what came before and pushing to new successes)
  • Solve the problem, not just through code
  • Team and company culture
    • How much autonomy will I have
    • How hard will it be to make progress
    • Do I need to mind myself
    • Open or secret
    • Oral or written culture
    • Formal or backdoor
    • Allocated or available resources
    • Crystalized (promotions come in turn) or liquid
    • Power, rules, or mission
    • Being out of the loop means you do not know how decisions are made
  • Make sure your contributions fit into a larger narrative
  • Focus on improvement, not revolution
  • Eagerly give support to those trying to make improvements even if you disagree with their approach
  • Align goal with sponsors
  • Look for “objectives that are always true” (like covering costs or maintaining systems)
  • Make sure people feel okay to disagree
  • Ask, “Can anyone not live with this choice?” instead of, “Is everyone okay with this?”
  • Make sure everyone knows that things will get hard
  • Fish around for ulterior motives
  • Make sure to connect concepts so people understand the context
  • Add more nouns to be explicit on what is needed where
  • Beware of “bike shedding”
  • “Watermelon project” (all green on the outside but all red on the inside)
  • “Wrong gets corrected, vague sticks around”
  • Blockage
    • Understand
    • Explain
    • Find a work around
  • Three bullets and a call to action
  • “There is no such thing as a ‘temporary’ solution”
  • You do not need to be the world’s best
  • Own your skills and mistakes
  • “Radiate intent” so no one is surprised by your movements
  • Beware of junior engineers doing administrative work
  • Optimize for maintenance, not creation
  • Design to be decommissioned
    • Every system needs to be replaced some day
  • Success is when other people want to work with you
  • It is difficult to improve both management and technical skills
  • It is okay to swing between technical and manager roles

Comments

Leave a Reply