All books

Staff Engineer

Bookshelf

Staff Engineer

Overview of Staff Engineering

  • Understand the Staff+ landscape: Recognize that Staff Engineer is an umbrella term covering various roles at the Staff, Principal, and Distinguished levels
  • Identify the four archetypes: Learn the four common Staff archetypes: Tech Lead, Architect, Solver, and Right Hand
  • Develop core skills: Focus on developing technical knowledge, product sense, leadership, and strategic thinking
  • Recognize organizational differences: Understand that Staff+ roles vary significantly between companies
  • Set realistic expectations: Recognize that the transition to Staff+ is as significant as the transition to management
  • Focus on impact over title: Prioritize making meaningful contributions over title advancement
  • Balance technical and leadership work: Find the right mix of hands-on technical work and influence through others
  • Build a supportive network: Develop relationships with peers and mentors who can provide guidance
  • Create your own role: Shape your Staff+ role to leverage your unique strengths and interests
  • Think long-term: Take a long-term perspective on both technical decisions and career development

Operating at Staff

  • Prioritize relentlessly: Focus your time on the highest leverage activities that align with company priorities
  • Work on what matters: Choose projects with significant potential impact on company goals
  • Build organizational trust: Develop trust with leadership as the foundation for future influence
  • Write effectively: Use written communication to clarify thinking and create leverage
  • Set clear expectations: Be explicit about commitments and keep stakeholders informed
  • Influence without authority: Learn to drive change through influence rather than direct control
  • Stay technically grounded: Maintain hands-on technical work to preserve credibility
  • Manage your time intentionally: Create systems to ensure you’re spending time on important work
  • Delegate appropriately: Identify opportunities to delegate work that develops others
  • Cultivate self-awareness: Understand your strengths, weaknesses, and how you’re perceived

Work at Staff

  • Lead complex initiatives: Take responsibility for coordinating cross-team technical initiatives
  • Create technical vision: Develop and articulate clear technical visions that guide team decisions
  • Solve systemic problems: Address fundamental issues rather than symptoms
  • Drive architectural alignment: Create alignment around key architectural decisions and principles
  • Reduce technical risk: Identify and address significant sources of technical risk
  • Build consensus: Bring diverse stakeholders together around shared technical approaches
  • Set technical direction: Provide guidance on technical direction without micromanaging implementation
  • Support technical excellence: Create conditions that enable teams to do their best technical work
  • Maintain systems perspective: Consider how local decisions impact the broader technical ecosystem
  • Balance pragmatism and vision: Find the right balance between ideal solutions and practical constraints

Getting the Title

  • Understand promotion requirements: Learn your company’s specific Staff Engineer promotion criteria
  • Create a promotion document: Develop a document that clearly articulates your Staff-level impact
  • Gather peer feedback: Collect specific feedback from peers on your Staff-level contributions
  • Find the right scope: Identify work of appropriate scope and complexity for Staff impact
  • Build sponsorship: Develop relationships with senior leaders who will advocate for your promotion
  • Demonstrate consistent impact: Show a sustained pattern of Staff-level contribution over time
  • Connect work to business impact: Clearly articulate how your technical work supports business goals
  • Document your work: Create visibility for your contributions through documentation
  • Prepare for the interview: Practice articulating your impact and technical depth
  • Be patient: Recognize that the path to Staff may take several years of consistent work

The Tech Lead Archetype

  • Support team effectiveness: Focus on enabling your team’s overall technical effectiveness
  • Balance team and individual contributions: Find the right mix of individual technical work and team enablement
  • Create technical context: Help the team understand the broader context for their technical decisions
  • Represent the team: Advocate for your team’s needs and perspective to stakeholders
  • Guide technical decisions: Guide important technical decisions without making all decisions
  • Manage technical risk: Identify and address technical risks before they become critical issues
  • Drive technical alignment: Create alignment around technical approaches within and across teams
  • Coach and mentor: Help team members develop their technical and leadership capabilities
  • Navigate organizational politics: Help your team navigate organizational dynamics effectively
  • Balance short and long-term: Find the right balance between immediate needs and long-term health

The Architect Archetype

  • Design cohesive systems: Create architectural designs that enable sustainable product development
  • Focus on interfaces and boundaries: Pay special attention to system interfaces and boundaries
  • Balance standardization and innovation: Find the right balance between consistency and allowing teams to innovate
  • Communicate technical vision: Articulate clear, compelling technical visions that guide decisions
  • Build consensus: Create alignment around architectural approaches across multiple teams
  • Address technical debt strategically: Develop approaches for managing technical debt systematically
  • Lead technical discovery: Guide exploration of complex technical problems and potential solutions
  • Support implementation: Stay connected to implementation realities while focusing on architecture
  • Learn from operational experience: Incorporate operational learnings into architectural decisions
  • Evolve architecture incrementally: Design evolutionary architectural changes rather than disruptive rewrites

The Solver Archetype

  • Tackle critical problems: Take on the organization’s most important and challenging problems
  • Dive deep when necessary: Be willing to dive deep into code and systems to solve difficult issues
  • Build temporary teams: Assemble ad-hoc teams to address specific challenges
  • Know when to move on: Recognize when to hand off solutions to long-term owners
  • Balance urgent and important: Find the right balance between urgent issues and important longer-term work
  • Build organizational credibility: Develop credibility through consistently solving difficult problems
  • Create reproducible approaches: Document approaches so others can apply them to similar problems
  • Address root causes: Look beyond symptoms to address underlying issues
  • Apply appropriate solutions: Match solution complexity to the problem rather than over-engineering
  • Teach while solving: Use problem-solving as opportunities to develop others’ capabilities

The Right Hand Archetype

  • Support executive effectiveness: Help senior technical leaders be more effective
  • Extend leadership reach: Act as a force multiplier for senior technical leadership
  • Represent leadership faithfully: Accurately represent leadership perspectives when acting on their behalf
  • Stay technically credible: Maintain technical credibility while working closely with executive leadership
  • Navigate sensitive situations: Handle politically or emotionally charged situations with care
  • Balance multiple priorities: Manage multiple high-priority initiatives simultaneously
  • Connect strategy to execution: Help translate strategic priorities into executional plans
  • Provide honest feedback: Give candid feedback to senior leaders on technical matters
  • Build broad influence: Develop influence across multiple teams and functions
  • Maintain independence: Retain independent judgment while supporting leadership

Creating Space for Others

  • Sponsor others actively: Create opportunities for others to take on high-visibility, high-impact work
  • Distribute credit widely: Ensure others get appropriate credit for their contributions
  • Create growth opportunities: Identify and create opportunities for others to stretch and grow
  • Share context generously: Provide broader context that helps others make better decisions
  • Delegate meaningful work: Delegate important work, not just low-value tasks
  • Amplify underrepresented voices: Create space for underrepresented perspectives to be heard
  • Build a leadership pipeline: Help develop the next generation of technical leaders
  • Give actionable feedback: Provide specific, actionable feedback that helps others grow
  • Create inclusive environments: Work to create environments where diverse contributors can thrive
  • Recognize different paths: Acknowledge and support different ways of contributing and leading

Maintaining Technical Skills

  • Allocate time for hands-on work: Reserve time for direct technical work to maintain skills
  • Choose technical involvement strategically: Select hands-on work that aligns with key initiatives
  • Stay current with technology: Invest in learning about relevant technological developments
  • Build projects for learning: Create small projects to explore new technologies
  • Participate in code reviews: Use code reviews to stay connected to implementation details
  • Read code regularly: Develop habits of reading and understanding code across your systems
  • Engage in technical discussions: Participate actively in architectural and design discussions
  • Learn from experts: Find opportunities to learn from technical experts in different areas
  • Contribute to open source: Consider open source contributions as a way to practice skills
  • Balance breadth and depth: Find the right balance between broad knowledge and deep expertise

Career Development Beyond Staff

  • Expand your scope gradually: Incrementally increase the scope and impact of your work
  • Develop specific expertise: Build distinctive expertise that differentiates you
  • Create leverage through others: Focus on multiplying your impact by enabling others
  • Build external visibility: Consider speaking, writing, or other forms of external visibility
  • Seek diverse experiences: Look for varied experiences that broaden your perspective
  • Define success personally: Create your own definition of success beyond traditional advancement
  • Consider lateral moves: Explore opportunities in different domains or technologies
  • Build relationships strategically: Develop relationships with senior leaders across the organization
  • Create unique value: Identify ways to create unique value based on your specific skills and interests
  • Balance specialization and versatility: Find the right balance between specialized expertise and versatility

Key Takeaways

  1. Focus on organizational impact: Prioritize work that significantly impacts company goals and creates long-term value
  2. Develop key skills: Build technical depth, strategic thinking, leadership skills, and organizational awareness
  3. Find your archetype: Identify which Staff archetype (Tech Lead, Architect, Solver, Right Hand) best fits your strengths
  4. Build influence through trust: Develop trust and credibility as the foundation for organizational influence
  5. Write effectively: Use written communication to clarify thinking and create leverage for your ideas
  6. Create space for others: Actively sponsor others and create opportunities for their growth and visibility
  7. Stay technically grounded: Maintain hands-on technical work to preserve your technical credibility
  8. Work on what matters: Choose projects with significant potential impact and align with company priorities
  9. Build a support network: Develop relationships with peers and mentors who can provide guidance
  10. Balance pragmatism and vision: Find the right balance between ideal solutions and practical constraints