Booking.com is a Dutch online travel agency for lodging reservations & other travel products, and a subsidiary of Booking Holdings. It is headquartered in Amsterdam and one of the largest online travel agencies in the world. Founded in 1996, the website has over 28 million listings.
Is this a case of just getting them on board with what you have found or just trying to find time to take the initiative? The PM will generally be the one in charge of what we develop over the upcoming period (in my experience anyway).
We are working on a technical product solution which provides APIs in a B2B fashion. We do not have any interface apart from these APIs. There are some internal tools which replicate this functionality (web dashboard) for us to view the data and some smaller B2B Companies to use, but is outside the scope of our Product / Team as it's just parity that is maintained.
Our PM is not a technical person and sometimes it gets very hard to explain the reasons why something cannot be done. Or their suggestions completely miss the point / question I was asking.
They view it from a visual perspective and suggest things that require a lot of back and forth to explain why it isn't feasible.
I've tried in the beginning to help them get setup with basic Postman collections of our API to see the flow. Our EM is also doing their best to prioritise tech vs product.
I feel some of this is reactive and not proactively helping as I feel a bit frustrated to what seem quite obvious which isn't helpful at all.
What do you suggest one can do to better improve communication or even how to view things from their perspective.
The one con is as a PM their calendar is always full
Most of the decisions are currently pending product roadmap alignment with other teams and senior leadership. There are a few housekeeping items but even those right now aren't worth doing. So what can be done as an Engineer in this situation? I am connecting with some product folks to help them understand our current flow better. Some of the code has GIT Blame commit of 5 years back, so it's new to me and them as well while we try to document what is happening and where to go.
I took part in a company-wide hackathon and won! I hacked on a backend API that allowed for a more intuitive UI around hotel policy changes. This feature is now on the roadmap for the company and I’ve been talking to the relevant eng manager on the team to talk about the work in one of their teams. How can I continue the momentum of this hackathon?
Here are the 2 main options I’m thinking about:
There is a mentorship program at Booking, but I am not currently enrolled. This is because I’m not entirely sure what sort of mentorship I should seek out. How can I figure out the optimal mentor to have?
In terms of what a potential mentor can help me with, I'm currently spending a lot of cycle on a Perl -> Java migration effort across the company's legacy codebase.
I have some doubt around my ability to capitalize on my work and opportunities to get the recognition and credit I deserve. How can I make sure that I’m doing this properly, so I’m properly leveled and promoted over time?
Here are some of the things I’m doing to achieve this:
For additional context, I’m working on a big refactoring effort to move the company’s Perl codebase to Java. Is there anything I can specifically do there to get the maximum amount of points?
They recently rolled out the Booking Career Framework, creating itemized lists on the expectations for each level, so I know what it takes to get promoted. I'm 70% - 80% that I'll get it in the next performance review cycle, but I have some concerns.
My main concern is that Booking doesn't have a lot of space to grow, evident by the fact that I spend ~50% of my time on the company's migration effort to move from Perl to Java. The effort for this started in 2014 and is around 30% done. It's not a super high company priority according to my manager, but my team spends a lot of time on it, which worries my prospects about finding scope with better business impact.
On the flip side, I had Java experience coming into Booking, so I am well-equipped for this migration work. For example, I was able to solve a deep image loading issue recently that required a strong understanding of default Perl behavior.
I heard from Tech Career Growth sessions that promotion is a main indicator. Is that the best one or are there other ways to identify if you’re truly becoming a better software engineer?
See relevant discussions involving Booking.com engineers on Taro.
Software engineers are evaluated on 2 broad axes:
This is your project impact and output. Provide data about what technical work you've done, the impact on key metrics, and what other contributions you've made.
This is about the behaviors you exhibit while achieving the impact. What processes, tools, or initiatives did you improve or introduce to make the team more productive? As you become more senior, your level of influence should increase, and therefore your behavior should change with it.
One interesting part of Booking culture is the labels for employees at various levels. Each level is given a label A through M, and these map to specific terminology.
|A, B, C (apprentice or pre-college)||Traveler|
|D, E, F (entry/mid-level)||Explorer|
|G, H (principal)||Globetrotter|
|I, J (senior leadership)||Navigator|
|K, L, M (executive level)||Trailblazer|
There's a default template from the company, which you can customize for your use case. The template covers what you're doing well and what you could do better. In particular, there are two specifically-worded questions:
Peer feedback is a critical input for your manager to calibrate you properly.
The manager collects peer feedback (generally at least 3 others) as part of the evaluation process. The manager does not officially provide feedback to reports, but their feedback is included in the performance review shared with the employee.
All feedback is public to the person receiving it. Both the content of the feedback and the identity of the author is revealed to the employee.
Watch this video to determine the optimal set of peers for your packet: Assembling The Feedback "Avengers" For Your Promotion Case
Recently, Booking.com introduced a "talent review" every 6 months, conducted by managers for each of their reports. Candidates discuss future goals and growth (Including, potentially, the path to promotion).
Getting the top (1) or bottom (5) rating at Booking is exceedingly difficult. Booking is very "middle heavy", with the vast majority of engineers getting the default Meets All rating.
Managers will generate a packet for each report which is then used to discuss the engineer's accomplishments relative to other engineers at the same level. This is the process through which a rating is defined.
Booking compensation is broken into salary adjustments, cash bonuses, and equity grants.
Salary adjustments are fairly small unless you get promoted. You can expect salary increments to keep up with inflation.
Your cash bonus is a percentage of your base salary. The percentage depends on your level:
|Level||Base bonus %|
|Software Engineer 1||10%|
|Software Engineer 2||15%|
|Senior Software Engineer 1||15%|
|Senior Software Engineer 2||20%|
|Principal Software Engineer 1||?? (please let us know!)|
|Principal Software Engineer 2||?? (please let us know!)|
New grads are not eligible for equity in the company. Stock grants are awarded starting with SE2.
Compared to US companies (FAANG), equity grants at Booking are significantly smaller. Senior engineers and below should expect less than $20K USD in equity per year.
Unlike other Big Tech companies (see Meta or LinkedIn), Booking does not require a certain level or duration of performance in order to get promoted.
Starting with SE2 (mid-level engineer), you can stay at the same level without the danger of a PIP for any amount of time with a "Meets All" rating.
The key to avoiding PIP is to stay in sync with your manager - Learn how to do that with this video.
In Booking culture today, engineers will frequently apply for promotions multiple times before finally getting it. This is not seen as a negative signal.
Engineers need to submit a packet of their work for their manager to review.
There's no limit to how many engineers can be promoted on a single team. This can lead to occasional situations where an entire team consists of senior engineers.
At Booking, the minimum time in the role before a promotion is 1 year. Exceptions to this are very, very rare, which can be a source of frustration, especially for early-in-career employees who are clearly performing at the next level.