

The Staff Engineer's Path



The Staff Engineer's Path - Najlepsze oferty
The Staff Engineer's Path - Opis
For years, companies have rewarded their most effective engineers with management positions. But treating management as the default path for an engineer with leadership ability doesn't serve the industry well--or the engineer. The staff engineer's path allows engineers to contribute at a high level as role models, driving big projects, determining technical strategy, and raising everyone's skills.This in-depth book shows you how to understand your role, manage your time, master strategic thinking, and set the standard for technical work. You'll read about how to be a leader without direct authority, how to plan ahead to make the right technical decisions, and how to make everyone around you better, while still growing as an expert in your domain.By exploring the three pillars of a staff engineer's job, Tanya Reilly, a veteran of the staff engineer track, shows you how to:Take a broad, strategic view when thinking about your workDive into practical tactics for making projects succeedDetermine what "good engineering" means in your organization Spis treści:Foreword
Introduction
Two Paths
The Pillars of Staff Engineering
Part I: The Big Picture
Part II: Execution
Part III: Leveling Up
OReilly Online Learning
How to Contact Us
Acknowledgments
I. The Big Picture
1. What Would You Say You Do Here?
What Even Is a Staff Engineer?
Why Do We Need Engineers Who Can See the Big Picture?
Why Do We Need Engineers Who Lead Projects That Cross Multiple Teams?
Why Do We Need Engineers Who Are a Good Influence?
Enough (...) więcej Philosophy. Whats My Job?
Youre Not a Manager, but You Are a Leader
Youre in a Technical Role
You Aim to Be Autonomous
You Set Technical Direction
You Communicate Often and Well
Understanding Your Role
Where in the Organization Do You Sit?
Reporting high
Reporting low
Whats Your Scope?
A scope too broad
A scope too narrow
What Shape Is Your Role?
Do you approach things depth-first or breadth-first?
Which of the four disciplines do you gravitate toward?
How much do you want (or need) to code?
Hows your delayed gratification?
Are you keeping one foot on the manager track?
Do any of these archetypes fit you?
Whats Your Primary Focus?
Whats important?
What needs you?
Aligning on Scope, Shape, and Primary Focus
Is That Your Job?
To Recap
2. Three Maps
Uh, Did Anyone Bring a Map?
A Locator Map: You Are Here
A Topographical Map: Learning the Terrain
A Treasure Map: X Marks the Spot
Clearing the Fog of War
The Locator Map: Getting Perspective
Seeing Bigger
Taking an outsider view
Escaping the echo chamber
Whats actually important?
What do your customers care about?
Have your problems been solved before?
The Topographical Map: Navigating the Terrain
Rough Terrain
Understanding Your Organization
Whats the culture?
Secret or open?
Oral or written?
Top-down or bottom-up?
Fast change or deliberate change?
Back channels or front doors?
Allocated or available?
Liquid or crystallized?
Power, rules, or mission?
Noticing the points of interest
Chasms
Fortresses
Disputed territory
Uncrossable deserts
Paved roads, shortcuts, and long ways around
What Points of Interest Are on Your Map?
How are decisions made?
Where is the room?
Asking to join in
The shadow org chart
Keeping Your Topographic Map Up to Date
If the Terrain Is Still Difficult to Navigate, Be a Bridge
The Treasure Map: Remind Me Where Were Going?
Chasing Shiny Things
Taking a Longer View
Why are you doing whatever youre doing?
Sharing the map
If the Treasure Map Is Still Unclear, It Might Be Time to Draw a New One
Your Personal Journey
To Recap
3. Creating the Big Picture
The Scenario: SockMatcher Needs a Plan
Whats a Vision? Whats a Strategy?
Whats a Technical Vision?
Whats a Technical Strategy?
The diagnosis
Guiding policy
Coherent actions
Do You Really Need Vision and Strategy Documents?
The Approach
Embrace the Boring Ideas
Join an Expedition in Progress
Get a Sponsor
Choose Your Core Group
Set Scope
Make Sure Its Achievable
Make It Official
The Writing
The Writing Loop
Initial ideas
What documents already exist?
What needs to change?
Whats great as it is?
Whats important?
What will Future You wish that Present You had done?
Writing
Interviews
Thinking time
Make Decisions
Trade-offs
Building consensus
Not deciding is a decision (just usually not a good one)
Show your work
Get Aligned and Stay Aligned
Be reasonable
Nemawashi
Work on your story
Create the Final Draft
The Launch
Make It Official
Keep It Fresh
Case Study: SockMatcher
Approach
Why didnt previous attempts work?
Sponsorship
Other engineers
Scope
The Writing
Diagnosis
Guiding policy
Actions
The Launch
To Recap
II. Execution
4. Finite Time
Doing All the Things
Time
Finite Time
How Busy Do You Like to Be?
projectqueue.pop()?
Resource Constraints
Your Dashboard
Energy
Quality of life
Credibility
Social capital
Skills
E + 2S + ...?
Bin packing
Choosing Projects
Evaluating a Project
Youre invited to join
You ask to join
You have an idea
The fire alarm goes off
Youre claiming a problem
Youre invited to join a grassroots effort
Someone needs to
Youre just meddling
What are you signing on for?
Questions to Ask Yourself About Projects
Energy: How many things are you already doing?
Energy: Does this kind of work give or take energy?
Energy: Are you procrastinating?
Energy: Is this fight worth it?
Quality of life: Do you enjoy this work?
Quality of life: How do you feel about the projects goals?
Credibility: Does this project use your technical skills?
Credibility: Does this project show your leadership skills?
Social capital: Is this the kind of work that your company and your manager expects at your level?
Social capital: Will this work be respected?
Social capital: Are you squandering the capital youve built?
Skills: Will this project teach you something you want to learn?
Skills: Will the people around you raise your game?
What If Its the Wrong Project?
Do it anyway?
Compensate for the project
Let others lead
Resize the project
Just dont do it
Examples
Example: Speaking at the all-hands meeting
Example: Joining an on-call rotation
Example: The exciting project you wish you could do
Example: I want to want to
Defend Your Time
To Recap
5. Leading Big Projects
The Life of a Project
The Start of a Project
If Youre Feeling Overwhelmed
Create an anchor for yourself
Talk to your project sponsor
Decide who gets your uncertainty
Give yourself a win
Use your strengths
Building Context
Goals
Customer needs
Success metrics
Sponsors, stakeholders, and customers
Fixed constraints
Risks
History
Team
Giving Your Project Structure
Defining roles
Recruiting people
Agreeing on scope
Estimating time
Agreeing on logistics
Having a kickoff meeting
Driving the Project
Exploring
What are the important aspects of the project?
What possible approaches can you take?
Clarifying
Mental models
Naming
Pictures and graphs
Designing
Why share designs?
RFC templates
What goes in an RFC?
Context
Goals
Design
Security/privacy/compliance
Alternatives considered/prior art
Background
Trade-offs
Risks
Dependencies
Operations
Technical pitfalls
Its a brand-new problem (but it isnt)
This looks easy!
Building for the present
Building for the distant, distant future
Every user just needs to
Well figure out the difficult part later
Solving the small problem by making the big problem more difficult
Its not really a rewrite (but it is!)
But is it operable?
Discussing the smallest decisions the most
Coding
Should you code on the project?
Be an exemplar, but not a bottleneck
Communicating
Talking to each other
Sharing status
Navigating
To Recap
6. Why Have We Stopped?
The Project Isnt MovingShould It Be?
Youre Stuck in Traffic
Blocked by Another Team
Whats going on?
Navigating the dependency
Understand and explain
Make the work easier
Get organizational support
Make alternative plans
Blocked by a Decision
Whats going on?
Navigating the unmade decision
Understand and explain
Make the work easier
Get organizational support
Make alternative plans
Blocked by a Single $%@$% Button Click
Whats going on?
Navigating the unclicked button
Understand and explain
Make the work easier
Get organizational support
Make alternative plans
Blocked by a Single Person
Whats going on?
Navigating a colleague who isnt doing the work
Understand and explain
Make the work easier
Get organizational support
Blocked by Unassigned Work
Whats going on?
Navigating the unassigned work
Understand and explain
Make the work easier
Get organizational support
Make alternative plans
Blocked by a Huge Crowd of People
Whats going on?
Navigating the half-finished migration
Understand and explain
Make the work easier
Get organizational support
Make alternative plans
Youre Lost
You Dont Know Where Youre All Going
Whats going on?
Choosing a destination
Clarify roles
Choose a strategy
Choose a problem
Choose a stakeholder
You Dont Know How to Get There
Whats going on?
Finding the way
Articulate the problem
Revisit your assumptions
Give it time
Increase your capacity
Look for prior art
Learn from other people
Try a different angle
Start smaller
Ask for help
You Dont Know Where You Stand
Whats going on?
Getting back on solid ground
Clarify organizational support
Clarify roles
Ask for what you need
Refuel
You Have ArrivedSomewhere?
But Its Code Complete!
Whats going on?
Making sure the user can catch a Pokémon
Define done
Be your own user
Celebrate landings, not launches
Its Done but Nobody Is Using It
Whats going on?
Selling it
Tell people
Make it discoverable
Its Built on a Shaky Foundation
Whats going on?
Shoring up the foundations
Set a culture of quality
Make the foundational work a user story
Negotiate for engineer-led time
The Project Just Stops Here
This is a better place to stop
Its not the right journey to take
The project has been canceled
This is the destination!
To Recap
III. Leveling Up
7. Youre a Role Model Now (Sorry)
What Does It Mean to Do a Good Job?
Values Are What You Do
But I Dont Want to Be a Role Model!
What Does It Mean to Do a Good Job as a Senior Engineer?
Be Competent
Know Things
Build experience
Build domain knowledge
Stay up to date
Be Self-Aware
Admit what you know
Admit what you dont know
Understand your own context
Have High Standards
Seek out constructive criticism
Own your mistakes
Be reliable
Be Responsible
Take Ownership
Make decisions
Ask obvious questions
Dont delegate through neglect
Take Charge
Step up in an emergency
Ask for more information when everyone is confused
Drive meetings
If you see something, say something
Create Calm
Defuse, dont amplify
Avoid blame
Be consistent
Remember the Goal
Remember Theres a Business
Adapt to the situation
Be aware that theres a budget
Spend resources mindfully
Remember Theres a User
Remember Theres a Team
Look Ahead
Anticipate What Youll Wish Youd Done
Telegraph whats coming
Tidy up
Keep your tools sharp
Create institutional memory
Expect Failure
Optimize for Maintenance, Not Creation
Make it understandable
Keep it simple
Build to decommission
Create Future Leaders
To Recap
8. Good Influence at Scale
Good Influence
Scaling Your Good Influence
Advice
Individual Advice
Mentorship
Answering questions
Feedback
Peer reviews
Scaling Your Advice to a Group
Being a Catalyst
Teaching
Individual Teaching
Unlocking a topic
Pairing, shadowing, and reverse shadowing
Code and design review
Understand the assignment
Explain why as well as what
Give an example of what would be better
Be clear about what matters
Choose your battles
If you mean yes, say yes
Coaching
Asking open questions
Active listening
Making space
Scaling Your Teaching to a Group
Being a Catalyst
Guardrails
Individual Guardrails
Code, design, and change review
Project guardrails
Scaling Your Guardrails to a Group
Processes
Written decisions
Style guides
Paved roads
Policies
Technical vision and strategy
Robots and reminders
Automated reminders
Linters
Search
Templates
Config checkers and presubmits
Being a Catalyst
Solve a real problem
Choose your battles
Offer support
Find allies
Opportunity
Individual Opportunities
Delegation
Sponsorship
Connecting people
Scaling Your Opportunities to a Group
Share the spotlight
Being a Catalyst
To Recap
9. Whats Next?
Your Career
Whats Important to You?
Where Are You Going?
What Do You Need to Invest In?
Building skills
Building a network
Building visibility
Choosing roles and projects deliberately
Your Current Role
Five Metrics to Keep an Eye On
Can You Get What You Want from Your Role?
Should You Change Jobs?
Reasons to stay in the same role or company
Reasons to move
Paths from Here
Keep Doing What Youre Doing
Work Toward Promotion
Work Less
Change Teams
Build a New Specialty
Explore
Take a Management Role
Take on Reports for the First Time
Find or Invent Your Own Niche
Do the Same Job for a Different Employer
Change Employers and Go Up a Level
Change Employers and Go Down a Level
Set Up Your Own Startup
Go Independent
Change Careers
Prepare to Reset
Your Choices Matter
To Recap
Index O autorze: Tanya Reilly od ponad dwudziestu lat zajmuje się inżynierią oprogramowania. Często pisze o przywództwie technicznym i niezawodności oprogramowania. Jest organizatorką konferencji LeadDev StaffPlus, a także cenioną prelegentką na spotkaniach branżowych. mniej
The Staff Engineer's Path - Opinie i recenzje
Na liście znajdują się opinie, które zostały zweryfikowane (potwierdzone zakupem) i oznaczone są one zielonym znakiem Zaufanych Opinii. Opinie niezweryfikowane nie posiadają wskazanego oznaczenia.