[Book] Staff Engineer's Path
06 May 2023Good Read Book On Expecations,Responsibilites and Opportunities at Staff Engineers.
What is Staff Engineering Level ?
- three pillars of the technical track: big picture thinking, project execution and positive influence.
- Context of Decision - Senior Engineers know Good Decision, Context take time and effort
- staff engineering is a leadership role
- Teaching
- Quietly raising everyone’s game
- Setting technical direction
- technical judgment will need to include the reality of the business
- Introvert is OK, Jerk is not
- Being Influence
- To be a good influence,need to have high standards for what excellent engineering looks like and model them when you build something
- Your reviews of code or designs should be instructive for your colleagues and should make your codebase or architecture better
- When you’re making technical decisions, you need to understand the tradeoffs and help other people understand them too
- You need to be able to dive into the details where necessary, ask the right questions, and understand the answers
-
When arguing for a particular course of action, or a particular change in technical culture, you need to make sense and you need to be right. So you have to have a solid foundation of technical skills.
-
Coding is not necessarily,goal is to solve problems efficiently, to take on the design or leadership work
- deep diving through codebases will still remain the most efficient tool to solve many problems. writing documents might get better results, or becoming a master of data analysis, or having a terrifying number of 1:1 meetings. What matters is that the problems get solved, not how
-
autonomy demands responsibility
- strong communication skills.
Understanding Role
- Staff Level at each of Experience Level, Director or Manager or VP
- Reporting “High” and “Low”
- Broad Scope -> Lack Of Impact, Becoming a bottleneck, Missing Relationship / Mentorship to juniors
- Choose Area , build Influence, have some success, solve problem there, move to next area
- Narrow Scope -> Lack of Impact, Opportunity cost,Overshadowing other engineers,Overengineering
- Areas deep enough to spend whole career, never run out ideas,oppo, check if this is space
- Defining Job
- Do you approach things depth-first or breadth-first?
- Which of the “four disciplines” do you gravitate towards? 1.Core technical skills - Coding 2.Product management - what needs to be done and why 3.Project management - practicalities of achieving the goal, removing chaos , task tracking, blocking, unblocking 4.People management -group of people into a team, building their skills and careers, mentoring
- How much do you want (or need) to code?
- How’s your delayed gratification? compiled code as success, work with no builtin feedback
- Are you keeping one foot on the manager track?
- Do any of these archetypes fit you?
- Tech leads who partner with managers to guide the execution of one or more teams 2.Architects, who are responsible for technical direction and quality across a critical area 3.Solvers, who wade into one difficult problem at a time 4.Right Hands, who add leadership bandwidth to an organization
- What’s your current mission?
Holder of Three Maps
- Locator - your place in wider organization - Scope
- Keep Update
- Have skip-level 1:1s and ask your manager’s manager what they care about.
- Face time Talk to customers and team members
- Topographical Map - Navigate Terrain
- good ideas don’t get traction
- won’t find out about the difficult parts until you get there
- Everything takes longer
- Keep Update
- build continuous context
- Automated announcement lists and channels
- Walking the floor
- Making time for reading
- Checking in with your leadership
- If the terrain is still difficult to navigate, be a bridge
- Treasure Map - Where you are going
Creating the Big Picture
- technical vision describes a future state. technical strategy describes a plan of action
- Includes - Approach | What to make, is it good? , who is accountable - Writing | Initial Ideas , Research , Share-able? - Launch | Review , Official , revisit at periods
- state for your architecture, code, processes, technology and teams.
- Good vision { Simple , intentional , consolidated , inspirational , memorable } from Making Things Happen Book
- “Kernel of Strategy” From Good Strategy Bad Strategy
- diagnosis of the problems, a guiding policy, and Coherent actions that will bypass the challenges.
- Final Question on Strategy or VIsion : “Am i lying to myself on any ?”
- principles of decision making - Lack of disagreement is more important than agreement - Rough consensus is achieved when all issues are addressed,but not necessarily accommodated - Humming should be the start of a conversation, not the end - Consensus is the path, not the destinatio
- Telling story in launch
Finite Time , Defend it
- Focus means sometimes saying no
- responsible for choosing your own work
- Liminted Resources Energy+ Happyness + Credibility + Social Capital + Skills
- Time for Scheduled Workload + Extra Obligations + Calm
- Which projects should you take?
- Part-time/Fractional project - DIsconnect from main project
- Side quest one that unblocks others
- Diversion
- Part-time/Fractional project - DIsconnect from main project
- Always " A bin packing Problem"
Leading Big Projects
- take on problems that seem intractable
- Set up the structures that will reduce ambiguity and make it easy to share context
- There will always be tradeoffs
- Communicate
- Expect problems to arise , changes in direction, people quitting, and unavailable dependencies
- Getting Context, All 3 maps
- Sucess Metrics
- RACI, the Responsibility Assignment Matrix.
As Role Model an passive influence
- Values are what you do
- Negative Traits - Condscending, impossible to please, never available
-
positive traits - Mature, COnstructive and accountable
- Building Competence
- Gaining Knowledge and Experience
- Build Domain Knowledge and styaying update
- Self Aware
- What is known
- What is unknown
- Understand Context
- High Standards - Seek Constructive Critisim - Owning Mistakes - Be reliable
- Be Responsible - Taking Ownership - Make decisions - Ask obivious questions - No delegation via neglection
- Taking Charge of Meetings, research about everything
- Calm
- Expect Failure
- optimize for maintainance not for creation
- Create Future Leaders
References
- Kindness Engineer
- True Individual Contributor
- Technical Lead Manager
- Staff Engineer
- Debugging Teams
- Fundamentals of Software Architecture
- Eventbrite Casestudy
- Technical Strategy vs Product Strategy
- Technology Strategy Patterns
- Engineering Strategy
- On Consensus and Humming in the IETF
- No to Work Request
- Product Requirement Document
- Team What Who and How
- write docs
- Levels of Senior Engineers