LJ Kenward As a junior developer, you are expected to be bold and do whatever it takes to stay unblocked and working productively.
At the same time, it’s important to see things from the other developers’ perspective. Every time you approach them while they’re in “code mode” to ask a question, you are potentially setting them back ~10 minutes in their efforts to get their work done.
It’s a fine line to walk.
My advice is to cultivate relationships with as many people on your team as possible, because different people will be available at different times. This way, it’s unlikely you’ll have to wait for long before getting a natural opportunity to ask for help.
I would sooner take a break and accept that I’m going to be blocked for 5 minutes than risk knocking another developer out of their flow state.
When Bob gets up to go to the kitchen, you can approach him and ask your question. Maybe he’ll say, “Oh, Jenny knows more about that than I do.” But you can respond: “Jenny’s in code mode and I don’t want to disturb her. Could you take a look at this real quick? I’m blocked.”
There’s a good chance he’ll agree that it’s best not to disturb Jenny, and will take a crack at helping you get unblocked.
With private offices (as opposed to open floor plans) this is actually simpler, because people leave their doors open when they are open to being approached and close their doors when they need to be left alone. There’s less ambiguity.
Most offices I’ve worked in have a default-to-open-door culture, and you shouldn’t feel timid about asking someone for help if their door’s open.