Skip to content

Latest commit

 

History

History
34 lines (27 loc) · 4.05 KB

engineering-ladder.md

File metadata and controls

34 lines (27 loc) · 4.05 KB
title date description authors tags hide_frontmatter
Engineering Ladder
2021-11-01
One of the biggest challenges in people management is determining whether your engineers are growing in their careers.
thanh
career
software engineer
handbook
true

One of the biggest challenges in people management is determining whether your engineers are growing in their careers. While large companies have established career ladders, most companies sacrifice them to stay “flatter” and “more agile”. In reality, there’s no such thing as a “flat” organization—having one means that people don’t spend time talking about or thinking about levels and promotions because there are so many other things to do. However, one of the main reasons people move out is because they experience stagnation in their careers.

We often talk about how to scale our organization, and how to build innovative products but it’s impossible if we cannot retain our talents and have a high standard to look for new joins. For all of those reasons, we wrote this ladder to enable software engineering managers to have meaningful conversations with their direct reports about the expectations of each position and how to plan for the next level in their careers without compromising consistency in external recruiting.

How to read the ladder

The purpose of the ladder is to create a structure that would allow people to see the big picture, but also dive into details as needed. Even if you do not know all of the details about one step, you should be able to get an idea of what engineers will focus on at that level. The ladder consists of five parts:

  • Engineering aspects: four key outcomes that every engineer should achieve. We wanted to be very clear from the start that the elements must be opinionated, in line with our beliefs that they will reinforce our core values and create a successful organization:

    • Technical: focus on technical skills, including an engineer’s mastery, best practices, quality & testing, design, debugging, performance optimization, and scalability.

    • Execution: focus on how an engineer gets things done: planning, scoping, estimation skills, getting unstuck, taking ownership, strategic alignment, product/business understanding, and vision.

    • Influence: focus on the level of impact and influence on people, including leadership, knowledge sharing, mentoring, hiring, and onboarding.

    • Collaboration & communication: focus on teamwork, communication skills, asking for and giving feedback, collaborating, and documentation.

      We believe that Technical and Execution are “value-adders”, while Influence and Collaboration & Communication are “value-multipliers”. An adder raises the productivity output of their team members, while a multiplier raises the productivity of those around them. As you progress through higher levels, the influence, collaboration & communication become significantly more involved.

  • Career path: give engineers a map of progress. We don’t assume that all engineers should (or want to) aspire to become managers. And leadership is not only for a senior role.

  • Individual contributor track: outline expectations and examples of engineer’s competencies and responsibilities at every level. While entry levels generally focus on engineers executing work, senior levels focus on mentoring and guiding others in their work.

  • Manager track: define the detailed matrix for management roles. Everyone following this path should consider himself a “multiplier”, who unlocks the potential in their team. However, we also wanted to emphasize that this is a technical managing role, not a people ops, thus, the need for technical competency is a must.

  • Core values: remind everyone about the organization's vision, mission, and principles. We expect all members of the engineering team to exhibit the company values in their work.