I work as a software engineer at Stripe. Recently, my new manager and I had a discussion about the different “levels” of software engineers, and how one can use a coffee shop analogy to understand the responsibilities of the different levels. I thought the analogy was pretty good, so I’m sharing the sketch of it here.
Entry-level (L1)
An entry-level software engineer’s responsibility is to complete pre-defined tasks.
In the coffee shop analogy, this would look like:
- Make this customer’s order.
- Check out this customer at the register.
- Clean up that spill in the restroom.
- Refill this espresso machine with fresh grounds.
Entry-level-plus (L2)
In the next level, an engineer begins to manage entire projects and systems, instead of individual tasks. In the analogy:
- Ensure the espresso machine is working and producing quality coffee.
- Man the register and address any issues that come up.
- Keep all the floors and tables clean.
The tasks begin to become more ambiguous, requiring the engineer to think more about what specific things need to be done. This is a trend that generally holds: higher levels, more ambiguity.
Senior (L3)
At this level, an engineer begins to think more on the level of the entire team, rather than one specific project. Projects often are of such large scope that multiple engineers work on them. Thus, a senior engineer’s responsibilities often take on more of a managerial flavor.
In the analogy, this is like managing an entire coffee shop:
- Keeping all of its interrelated systems running well
- Forecasting future trends and preparing for them
- Directing and assisting other workers to complete the “low-level” tasks
Staff (L4)
The jump from senior to staff is a big one. In the analogy, it’s like going from one coffee shop to an entire chain of coffee shops.
Now you have to think about relationships that are even larger and vaguer.
Above
The analogy starts to break down as the levels keep growing. Or rather, the higher levels begin to get less and less well-defined. This is probably because there are fewer and fewer people at these higher levels. Sometimes entire levels are invented for particular people.