It also has to do with how the companies handle the offshoring, as some larger corporations take the approach of just using an outsourcing company from a specific country (usually chosen by price) and assume that you can just pay a specific amount of money per developer and they will all be the same quality as the guys coming into the office.
I've worked most of my career as a remote employee and I can say that the best arrangement is when the company is as involved in hiring offshore employees as they are with hiring onshore ones. Someone working through an intermediary will always be disconnected from the company's success, as they work for an outsourcing company, and not the US corporation itself.
There are definitely a lot of discussions to be had around employee cultural fit, and I don't just mean company culture. You want a similar mindset and work ethic that your other employees have if you want a high chance of success.
We also need to talk about how some companies haven't been able to successfully adapt their processes to work with remote employees alongside the office employees and sometimes treat the offshore ones as second class citizens, which is not really a great thing.