In 2018, Nebulab doubled in size, growing from 10 to 20 engineers. This created a unique set of challenges around our hiring and team retention processes:
- We wanted to have a clear career path for every team member, to help them understand what skills they needed to develop in order to improve their craft. This would make it easier for mentors to design a growth path for their mentees that is aligned with Nebulab's culture.
- We wanted to have a standardized framework for salaries, to limit the room for negotiation and eliminate unconscious bias during the hiring process.
- We wanted to create a promotion process that would involve more than a single manager's opinion.
- We wanted to have a practical way to promote Nebulab's values and culture and reward their application in the team's day-to-day work.
We found that the best tool to accomplish this is a competency matrix, a spreadsheet that maps each role and seniority level in the company to a set of required traits and attitudes.
After looking at a few examples, we designed our own matrix, which you can find here: Nebulab Competency Matrix.
Today, the matrix permeates all aspects of Nebulab, and we use it as a tool to promote our culture and measure a team member's impact. The matrix will be used by your mentor continuously to help you grow and evaluate you, so it's paramount you understand how it works!
Be aware that Progression, the tool that we're using for the matrix, refers to the competency matrix as "Framework" so there isn't a real difference between the two and using either term is fine.
How the matrix is structured
The competency matrix is organized by disciplines. Currently, we have the following disciplines, but more may be added in the future:
- Software Engineer: this is our bread and butter. The majority of our team members are hands-on software engineers, tasked with solving a client's problems through the code they write.
- Engineering Manager: an engineering manager (or team lead) is a contributor who has chosen to take a managerial path. They communicate with clients to understand their priorities and coordinate their team accordingly.
- Product Designer: product designers deal with all UX and creative work at Nebulab, both for clients and internal projects such as the Nebulab brand, our website and so on.
- Operations Manager: these are the people who keep things running smoothly and handle all the bureaucracy and processes for us. They're like office managers on steroids!
Each discipline is split by levels and areas, with each area having many skills. Areas are currently the same for all disciplines:
- Craft: technical skills that are required for the employee to work in that discipline.
- Human: skills that relate to the employee’s ambition and desire for growth.
- Leadership: skills that relate to the employee’s relationship with Nebulab and their teammates.
Levels are comparable across disciplines. In other words, an SE3 Software Engineer and an PD3 Product Designer have comparable responsibilities and impact in the company.
Each level provides a description of the abilities and traits exhibited by an employee at that level, as well as practical examples to help managers in the evaluation process.
Furthermore, each level comprises previous levels, so an employee at level 3 also possesses all the requirements of levels 1 and 2. It's also interesting to note that certain skills do not go further as the levels progress, so once that skill is learnt no further work is required there.
Using the matrix to grow
As we mentioned, the matrix will be used by your mentor to monitor your progress and figure out what areas you need to work on to increase your impact at Nebulab. We use Progression, for evaluating team members, and the process is the following:
- You will log into Progression with Nebulab's Google account and start a check-in.
- For each skill in the matrix, you will need to select whether you are working towards the expectations, meeting the expectations or exceeding the expectations for that level. Although it is not required, you're strongly encouraged to also provide examples of situations where you performed at that level.
- Once you've completed your side of the check-in, your mentor will be notified and will follow the same exact steps.
- When your mentor has also completed the check-in, you will both be notified and should schedule a meeting to finalize the evaluation.
- To finalize the evaluation, you will look at both your check-in and your mentor's and reconcile any differences.
The result of the evaluation will tell you whether you're working towards, meeting or exceeding the overall expectations for your position at Nebulab:
- If you are working towards the expectations, your mentor will work with you to get up to speed.
- If you are meeting expectations, your mentor will work with you to determine which area to grow in next.
- If you are exceeding the expectations, good job! Continue working with your mentor to grow.
Note that, while most check-ins will be requested against your current position at Nebulab, you are also welcome to request check-ins against the next level of your career path, or even an entirely separate position (e.g., you're a Software Engineer and want to check in against Engineering Manager). This is extremely useful if you want to get a sense of how you would perform in another position at the company, and is the basis for all career path transitions.
As a general rule, all team members are required to check in against their current position at least once a year.
Our promotions are descriptive, not prescriptive: in order to be promoted, you need to consistently exhibit all skills and traits from the higher level for a significant period of time. This is to prevent people from rising to the level of their incompetence.
When you check in with your mentor and the conclusion is that you're meeting your next level in the competency matrix, your mentor will begin the promotion process. They will assemble a promotion package comprised of your latest matrix evaluation and a comment explaining why they think you should be promoted.
This promotion package will then be submitted to the directors group, who will vote on the promotion by majority. The group's decision is final, although your mentor can present a new promotion package for evaluation if they think some information was missed in the initial discussion.
Certain disciplines provide you with the ability to switch roles. For instance, if you are an SE3 Software Engineer, you may decide to take the managerial path and become an EM3 Team Lead. It is important to note that this is not a promotion, but a step sideways.
If you're interested in switching disciplines, you can do it by talking to your mentor, who will ask you to request a check in against the new discipline. This will help you understand whether you already have all the skills you would need, or if you need to work towards meeting some of the expectations for your new role.
Once you're ready to take on your new role, you will officially be switched over. Your compensation and any other aspects related to your discipline will be adjusted accordingly.
The matrix and compensation
Your discipline/level and your compensation are different but related concepts. Each discipline and level are assigned a compensation package, and these packages are then reused across different disciplines. This is very powerful in reducing bias when discussing salary and promotions.
We don't feel ready to share our compensation packages publicly yet, although they are readily available for employees to consult, so it's easy to understand how their discipline and level compare to others and where they fit in the company.