Aug 5, 2020 to offer a clear career path to every engineer

In the past years, our engineers in felt that they lack proper support in career growth. Many of them felt stuck and they did not know how to move forward with their careers.

This was part of a bigger problem: We were missing comprehensive processes and mechanisms around performance evaluation, promotions, compensation, and general career growth. This was still a legacy of’s early start-up times when everything, including compensation and promotions, was rather chaotic and organic.

To fix this, we decided to introduce a proper career framework, inspired by some of the big tech guys. We aim to create a fair & transparent environment where our engineers can thrive and grow, limited only by their own abilities.

Core principles

Principle #1: We are all software engineers

When we started, we had 100+ engineering titles. We had Junior Automation EngineersSenior Infrastructure Platform EngineersAndroid Team Leads, and many many others.

We are pushing all that aside. We now have just software engineers. They are assigned different tech levels and those are universal across all of

For each level, we’re defining explicit expectations in terms of hard skills, soft skills (independence, leadership, communication, etc.) and general impact & usefulness within These expectations are identical for all our engineers on a given level, regardless of their technical domain or role.

For example, all our senior engineers (level 5) are now, besides being technical experts in their areas, also expected to be capable of owning a mid-sized project end-to-end and to have initiative crossing just their team’s boundaries.

Thanks to the levels, every engineer will have a clear understanding of where they stand in their career and what the necessary steps to move forward are.

Career ladder for software engineers at

Principle #2: We reward seniority and impact

Measuring and rewarding performance in creative professions is tricky. We want engineers to work smart, not hard. We want engineers to proactively come up with inventive solutions rather than diligently repeating mundane tasks. And we especially want to avoid systemically encouraging overtime and crazy working hours.

All of that is the reason why we take the tech level as the main factor when deciding one’s compensation.

Remember: One’s tech level is based on one’s seniority (hard & soft skills) and their impact within

You want to get promoted and make more money? Don’t work harder. Don’t do more of what you already do. That’s not enough. Learn something new and use it! Change how you work!

Principle #3: Promotion is a reward

In the traditional model, you are promoted to a “position” which usually comes with new responsibilities but also privileges and benefits, such as salary increase.

Following the big tech companies, we’re splitting “positions” into roles and the tech levels, and introducing “retrospective” promotions:

  • An engineer is promoted to the next level (L+1) if and only if they are consistently performing on the next level, i.e., clearly meeting the expectations of that next level.

In other words, promotion to the next level is a simple acknowledgment that you’re already operating on that level.

This makes the system predictablefair, and trustworthy, guaranteeing that:

  • nobody is promoted unfairly (= overpromoted), and
  • if somebody works hard to upskill themselves and meets the requirements of L+1, they will be rewarded with a promotion.

Along the way, our engineers are expected to assume and drop different roles in the company (mentors, team leads, people managers (!), project owners, tech product owners etc) simply to get more opportunities to grow. This should be an organic, informal process, which is easy to reverse.

Our challenges

This career framework is a completely new thing at and it affects hundreds of our engineers. Rolling it out was not an easy task.

  • The framework radically changes some core assumptions around career growth and also alters the long-existing, deeply embedded mechanisms. Even though we were not reinventing the wheel, it took endless hours for the discovery process, discussions, clarifying questions and obtaining buy-ins from a huge number of stakeholders.
  • We did not want this to be a simple top-down change, so we invited many individual engineers from across the company to join the process, increasing the pool of stakeholders.
  • We had to agree on what we understand by different levels. Who is a junior? Who is a senior? What do we expect from them? Is it okay to take away the senior title from some engineers? This in particular made the process sensitive.
  • We had to write down the initial level expectations. We wanted them to be easy to understand, interpret, and evaluate and also actually applicable across all roles and domains. Judging from initial feedback, we have still a lot of work to do.

The main takeaway is that there is no such thing as overcommunication.

Where we are now and what are our next steps

We are now wrapping up the first phase, at the end of which all our engineers will have their new levels assigned.

As for the next step, we’ll be collecting feedback on the skill evaluation process and try to improve it. We also need to officially kick off the new promotion process and start working on the compensation scheme.

There is plenty of work left to do, but we’re confident that this will bring to the whole new level. Stay tuned for more updates.

On behalf of,
Tobiáš Potoček, Engineering Manager for Booking & Self-Service, and
Stanislav Štefanič, VP of Engineering.

You can see that “stable work environment” and “fair conditions” are not just a phrase at Wanna join? We’re hiring!

Featured articles
Generating SwiftUI snapshot tests with Swift macros
Don’t Fix Bad Data, Do This Instead