Pros
Working with a Microsoft Partner and being able to show sites I've worked on to family, friends, and colleagues has been a very neat experience. Most of my other work was proprietary in nature. I also enjoy the flexibility that working remotely provides: scheduling appointments with ease, having a blanket and/or space heater always nearby, and not having to deal with a commute. My team is small but effective in creating and maintaining the sites we're assigned.
Cons
Spanish seems to have been the main language of the company for some time despite having offices in non-Spanish-speaking countries. Some of the company wide announcements were only available in Spanish when I first started and even the time tracking software we use is defaulted to Spanish. Work is actively being made to make English the company's main language instead of Spanish, but it is a work in progress. Some of the clients are insufferable to work with. Some are not responsive to questions and seem to be confused as to what they want in the project. Others are constantly changing the design and not getting us the necessary information needed to complete the work, all while wanting to keep the same due date despite their own delays. I'm assuming this is normal with consulting/freelance, which is what we're doing. Whatever the case, this causes a lack of good work/life balance (working late or weekends) when crazy deadlines are enforced. The type of work was not exactly what I was expecting when I signed on. I thought that it would be a 60-40 balance between frontend and backend work since the job description stated that backend experience was required. However, all my work has been frontend with a heavy design focus, lots of custom css and animation, which is not my idea of fun. The US team only had one developer, a frontend developer, before me and others joined, so the team size limited the types of projects they could do. There is talk of more diverse projects in the future, but things are still in the works. Sometimes cultural or personality differences cause riffles in the team (especially when the extroverts want more engagement from the introverts).