Rick's Dev Notes

Version 0.3.3

Dev notes you can use

Last updated on Mon, 28 Aug 2023 20:14 UTC

Titles

What to Expect

Here’s the gist of what to expect for each title.

Junior

  • Makes no impact.
  • “I need help.”
  • No experience.

Midlevel

  • Makes product impact.
  • “I don’t need help.”
  • Few years of experience.
  • They are able take existing code with issues and improve it.

Senior

  • Makes team impact.
  • “How can I help?”
  • 5-10 years of experience.
  • They are able to create something new and not just iterate on what’s already there.

Staff

  • Makes org impact.
  • “Go help.”
  • 10-20 years of experience.

Detailed Requirements

Senior Software Engineer (L5)

  • Technical direction for small number of engineers (0-5+)
  • Leads design and provides constant day-to-day mentorship on technical direction for team
  • Complexity: 1-2 quarter projects; mitigates against single risks at a time (e.g., capacity)
  • Craftsmanship: Often digs into low-level details, especially in code
  • Scope of Work: Owns immediate area, self-directs, but also plans and scopes larger scale projects
  • Sphere of influence: Sets direction for a small number of engineers
  • 1-2 relatively narrowly scoped technical focus areas
  • Technical Expertise: In design/code reviews, provides guidance about how to solve a problem. Which option is best?

Staff Software Engineer (L6)

  • Typically having strategic impact over some combination of a large work group, a very technically challenging problem, and/or a long time horizon
  • L6 influences velocity of team, mentorship, 10-30 engineers
  • Solving large scale projects that involve the leadership in company
  • Complexity: 1-2 year projects; balances multiple, interlocking risks (e.g., privacy and features), often many stakeholders
  • Often delegates digging into low-level details to others, except in specific cases of substantial risk
  • Proactively anticipate scaling issues and simplifying complex problems (i.e. simplify and standardize existing solutions, increase availability and reliability, or make data-driven optimizations and adjustments.)
  • Often leading efforts across multiple teams in order to tackle problems at this scale with leadership involvement
  • Drives product strategy, leads design discussions, collaborates with other engineering team’s coding 50%
  • Drives efforts across a sizable product group providing clear leadership via setting strategy, resolving disagreements and building consensus
  • Broader leadership across multiple teams
  • Technical Expertise: In design/code reviews, may suggest radically different options informed by and impacting other areas.