Pros
I worked for Evolution7 for a short while as a sub-contractor, providing development services to the agency's portfolio of clients remotely from the UK. The agency had most of its staff in Melbourne and a small team dotted throughout Europe. Everyone I dealt with at the company from top to bottom was competent, enthusiastic and helpful, despite the time-differences and associated challenges that brought. As a developer I found the work to be varied and challenging, covering everything from CMS website development to single-page JavaScript applications and custom Shopify themes. The clients were also quite diverse, from small independent businesses to large-scale companies with very different requirements and expectations. This kept the work interesting and provided opportunities to learn new skills and gain new experience, which is something developers should always look for in their roles. I enjoyed the work I did for Evolution7, and the standup video calls with the team in Melbourne when the time-difference wasn't so big in the spring and summer months. I was able to learn a lot from the other developers too, and provided some support and mentorship to more junior developers on the team.
Cons
Having two teams working on opposite sides of the globe was difficult, especially when providing IT support for clients based in Australia. Having to wait for hours to know if the work you just completed was effective and met the clients expectations was really stressful at times, leading to checking of emails or Slack at odd times of the night. I worked with the various project managers to try to ease those pressures via detailed handover notes, but inevitably I did work beyond my contracted time quite often in a bid to set my own mind at ease, which caused a bit of burnout by the end of my contract. That is just the nature of remote work though, and the agency did resolve to start limiting the outsourcing of work beyond Australia around the time that my contract ended.