We have generally coalesced into remote offices, which have enough folks in there to help each other. We've also started encouraging pair programming, so engineers can question each other more and review code together.
We still have remote employees, in fact, 4 of them are remote. But, it's considered on a case by case basis. The biggest issue with remote comes down to individual personality, i.e. how communicative and independent are they. Some people make great remote workers. But, I'd say many don't.
When an engineer is at office, they are team-motivated, more likely to get help without asking and avoid getting stuck.