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. The website has over 28 million listings.
Crux is when you’re learning and digging deeper technically. How do you approach taking ownership and growing your impact on not just the project but across the team and larger axis?
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.
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
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.
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:
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?
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?