2

What to do when you're blocked on almost everything?

Profile picture
Entry-Level Software Engineer [SE1] at Booking.com2 years ago

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.

56
1

Discussion

(1 comment)
  • 0
    Profile picture
    Robinhood, Meta, Course Hero, PayPal
    2 years ago

    I've been in this scenario a lot, and here are my thoughts, split up into 2 categories:

    1. How you can fix the problem
    2. What you can do in the meantime

    Fixing The Problem

    To be 100% honest, it will be hard for a non-senior engineer to have a serious impact here - Even in companies that are more "blind" towards level (e.g. Meta doesn't show levels publicly), rank matters. So be sure to set your expectations realistically here. All that being said, here's some tactics I recommend:

    • Focus on unblocking just 1 thing - Focus is almost always good, and this scenario counts as well. Go really deep on 1 big thing that's blocked and figure out why.
    • Aggregate data on blockage - Let's say 10 people disagree on this project for whatever reason. Talk to those 10 people and see if there's common patterns. Let's say 7 people all are blocking the project for the same reason: You want to "debug" this reason first.
    • Time-box things where possible - If there's one thing the corporate world understands, it's deadlines. If you can get everyone to commit to a delivery date, you can work backwards from that to pressure people more accordingly.

    What You Can Do In The Meantime

    Obviously you don't just want to be twiddling your thumbs in the meantime, especially as an earlier-in-career engineer where you should be coding quite a lot and building up that technical proficiency. Here are some ideas on "evergreen" but challenging coding work you can do.

    • Fix bugs - At a big company like Booking, there are always bugs for the codebase of every team, a lot of which have probably been sitting in the backlogs for months, if not years. Go on a fixing spree if you can't find product work to do.
    • Better engineering - This was the term Meta used to describe projects that improve engineering and not the product. These are the "responsible" things people often procrastinate. This includes writing automated tests, refactoring code, adding more logging, and making internal tools faster. Like the prior point, big companies are always flush with these opportunities.