I've also been on on-site teams where only one or two junior devs work remotely. This always seems to work out poorly, but based on my observations it's usually due a combination of only being willing to only pay entry level rates, and failing to set deadlines for them. When we waited 4 months on a remote while he apparently just spun his tires on a simple bug, even after I explained the fix to him (it was ~4 lines, I basically said "try looking in X file on line Y, if you fozz the frob, does it fix it?") and he just like, could not. Also he'd have "internet issues" practically every day. Now the company is skittish about remote workers, even though it was obviously their own incompetence in managing him.
I know I personally do my best work when working remote, provided I'm not being pestered constantly. I just wonder if the "remote workers are bad" thing because it seems that many people seeking remote dev work are just starting out in programming or trying to transition from other jobs thinking those high paying computer programming jobs sound easy.
I work now in an office (hope to change that) and when I look around there are only a few percent of people I would trust to do well in a remote environment.
I think the remote-first culture of the company attracts self-managers who value quiet, focused work, and who have relatively good communication skills.
Anyway, I never want to go back to office work after this gig.
I think though the fact that there’s friction to hiring junior people in a remote office situation should be of concern to us. There is always going to be a fresh batch of recruits and if we lose the ability to train them then who will take up that job, and what lessons will those people focus on?
For junior people or projects that require lots of collaboration, the remote nature does add some overhead. Your culture matters a lot here. If your culture is one of facilitating remote communication, then it can be done without too much drag. If you have a culture where many people are in an office, and don't tend to put things in slack or a video system such as zoom, then the overhead can become huge.
When working remotely full-time, I had some of the most productive days of my life, as well as some of the worst when I had to wait hours sometimes to hear back from members of my team. Highly collaborative efforts tend to suffer quite a bit in the asynchronous distributed model.