There are a lot of ways to communicate to someone without interrupting them. If you are communicating about a bug in code, a ticketing system is a good one because it communicates that something needs to be done, the person you are communicating to can handle the issue when it's not interrupting their current work, and gives them an effective way to let you know it's complete. In most cases the issue in question will get handled quicker because usually multiple people can take care of the task and the one who has free time first can handle it.
An atmosphere where interrupting people randomly is commonplace is almost never good for productivity.
> The best teams I have worked with tend to be more collaborative.
Collaborating doesn't require interrupting people in the middle of a task.