Performance Reviews & Development Matrix in Tech: An Engineer’s Perspective

armintelker
rebuy recommerce
4 min readJul 1, 2024

--

Introduction

My name is Armin, and I’ve been a part of rebuy for the past decade. I began my journey as a junior-ish to mid-level iOS developer and have worked my way up to the position of Staff Engineer over the years. The performance review process at rebuy has evolved significantly over the last few years. Initially, the process lacked clarity around self-evaluation and a strong path for personal development, which made it a bit challenging to develop yourself. However, three iterations ago, we introduced a leveling matrix that has transformed how we approach performance reviews, making them more structured and transparent. In this article, I will share my experiences and insights on this process from an evaluated perspective.

The Early Years: A Challenging Path

When I joined rebuy, the performance review process was pretty rudimental and built on some basic ruleset. Sometimes reflecting more on the company values of the given time and sometimes being more constructed under techniques like “SKS” (Start, Keep, Stop). Therefore, the reviews felt, from today’s perspective, a bit unstructured and unclear. The system lacked a clear, structured career path, it was difficult to measure progress over the years, and the requirements for promotion did not always feel equal across all tech teams and managers. Don’t get me wrong: back then, everything felt quite normal, and you often only see that you could have done better when you look back and reflect on the past and the old state.

The Turning Point: Introduction of the Leveling Matrix

Three iterations ago, rebuy introduced a leveling matrix to address these challenges. This matrix laid out clear rules and requirements for each level of experience, providing a structured path for career development. The matrix covers various levels, from Junior Software Engineers to the Senior level to Staff Software Engineers, each with specific criteria that need to be met for progression.

Leveling Matrix Overview

Our leveling matrix is divided into several levels:

  1. Junior Software Engineer — Entry (1)
  2. Software Engineer —Junior (2) and Mid (3)
  3. Senior Software Engineer — Mid (4) and Tech Lead (5)
  4. Staff Software Engineer — Expert (6)
  5. Senior Staff Software Engineer — Expert (7)

Each level is associated with distinct responsibilities and skill sets, offering a clear roadmap for growth. The leveling matrix includes various categories that help define the expectations and responsibilities at each level. So let’s delve into some examples illustrated by 3 skills:

Technical Proficiency: Encompasses a deep understanding of programming languages, frameworks, and coding principles, as well as the ability to apply this knowledge effectively in projects.

Responsibilities: Outlines the scope of work and leadership expectations at each level, including project management, task delegation, and mentoring.

Feedback: Focuses on the ability to provide and receive constructive feedback, fostering a culture of continuous improvement and learning.

Junior Software Engineer

  • Technical Proficiency:
    Current Level:
    Writing basic code, understanding the fundamentals of the programming language in use, and using common framework patterns.
    Development Goal:
    — Move towards a thorough understanding of base fundamentals and specific trade-offs of the language in use.
    Action steps:
    Dedicate time to study and seek guidance from experienced colleagues.
    — Venture out of your comfort zone to actively contribute to various projects and tasks.
  • Responsibilities:
    Current Level:

    — Works primarily on individual tasks with direct supervision.
    Development Goal:
    — Able to take on small projects and handle tasks with minimal supervision.
    Action Steps:
    Seek out small projects to work on independently.
    — Request feedback and guidance to improve efficiency and independence.
  • Feedback:
    Current Level:
    Receives feedback and applies it to improve work.
    Development Goal:
    Actively seeks feedback and uses it constructively.
    Action Steps:
    Regularly ask for feedback from peers and supervisors.
    — Reflect on feedback received and create action plans for improvement.

The matrix includes 12 different skills and has proven to be a good companion for self-evaluation and gives the managers a good tool to objectively evaluate their staff and give everyone a fair evaluation.

Personal Growth and Benefits

The introduction of the leveling matrix has had a profound impact on our career management, including my career. It has given us clear guidelines and goals, allowing us to focus on specific areas for improvement. This structured approach has not only facilitated our personal growth but also enhanced the overall efficiency and morale within the team. Reviews are now a collaborative and constructive process aimed at genuine development rather than a mere formality.

Conclusion

The transformation of the performance review process at rebuy, through implementing a leveling matrix, has been a game-changer. It has brought clarity, structure, and motivation to the team, turning what was once a challenging task into an opportunity for growth and development. As I reflect on my journey from a mid-level developer to a Staff Engineer, I am grateful for the direction and support that this system is providing. Adopting a similar matrix could be a step in the right direction for any organization looking to enhance its review process.

Thank you for reading!

--

--