3 Phases of Career Growth


Each step breaks down the problem into smaller sizes and gives it to the person above.

Each person in a step below mentors people in step above.

  1. Solution implementer writes code for well-defined problems.
  2. Problem solvers can be handed over a problem and they can figure out a possible solution, break it down to pieces and hand over to solution implementer. Problem solvers are progressively given bigger problems to solve.
  3. Problem finder is not told problems, they are given context of the business and the technology. They find problems, whether they are designated “architects” or “engineering managers”.

Don’t be Eaten

From https://engineeringorg.substack.com/p/dont-get-eaten :

You get told what to do AND how to do it – Junior Software Engineer

You get told what to do – Senior Software Engineer

You get asked how to do it – Staff Engineer

You get asked what to do AND how to do it – Director

You only get given Goals – VP

You decide the Goals – CXO

No one asks or tells you anything – God

Another perspective

  • Junior
    • Operates at the story level.
    • You give them a story, they do the work.
    • Levels up themselves.
  • Senior
    • Operates at the feature level.
    • You give them a feature, they split it into stories, and do most of the work and delegate a little. Levels up a team.
  • Staff
    • Operates at the need level.
    • You give them a need, they come up with a feature, split it into stories, split between doing and delegating the work
    • Levels up an engineering org or multiple teams.
  • Principal
    • Operates at the business level.
    • They see the need / opportunity and point the rest of the organization toward it,
    • delegate most of the work and do a little.
    • Levels up a business.

Yonatan Zunger, Distinguished Engineer, Twitter says