Pros
I am surprised at the myriad of negative reviews here of the Boulder office. The problems here seem to be ones that can easily plague a company that grew a bit too quickly but the management is committed to implementing positive long-term changes, addressing grievances, and keeping everything moving onward and upward. I have never worked for a company that was so open minded to the general process; here, it feels that the best idea truly is boss as long as you can sell your team leaders on the concept. In general everyone is encouraged to explore new concepts, manage their own time (like we're adults, wow!), make good decisions, yell for help and receive it if we need it, and encourage us to learn and grow both personally and as professions. As a new developer I find the work environment very helpful and encouraging. I can always count on my team members and managers to walk/talk me through something, give me advice, throw together an impromptu code review, and point me to resources and materials. I've never been made to feel like I am incapable or slow. I feel comfortable in telling someone that a concept is beyond me, or please explain this again, or what the heck does this mean, or I have no idea what I am doing here, or I am in over my head, can you get me someone who can help. Despite the fact we have constant deadlines and everyone is working hard, no one is so busy or stressed that they won't or can't take two minutes to help someone out. The cooperative culture here is just awesome, from what I have experienced. It gets noticed when someone goes above and beyond. I've seen capable developers ascend quickly based on competency, teamwork, and general merit; the salary increases reflect this as far as I am concerned, and when comparing this with similar-sized companies I have worked for in the past, Markit grants higher salary increases for good quality work than anywhere I've ever been. The monthly check-ins that Associates receive is helpful in this process as well; we get constant feedback on how we are doing, and there is genuine interest in if we are happy, if we feel supported, etc. Socially the company doesn't take much initiative but the people do. Folks at the office have gotten different types of groups started, from lunchtime disc golf to homebrewing. My team goes to lunch often and has started doing happy hours semi-regularly. The company also have an excellent for sale/wanted email system; I haven't had to deal with craigslist since I started here!
Cons
While overall there is a good work-life balance the PTO package is modest and outdated for a company trying to be "cutting-edge" on employee relations and building a culture. Offer flex time in the summer. Give us one more vacation week per year. Create some extra floating holidays (day after Thanksgiving, Christmas Eve, etc) that people can use. Et cetera. The Boulder office is uncharacteristically rigid for being in a hip, tech-driven city. One of the first offices I've ever worked at where a great majority of people are still around at 5 on a Friday. I've never seen anyone order a beer during a lunch outing. The snacks and beverages offered at office-wide gatherings are barely adequate. Some of the free food in the kitchen feels like it was picked out by a 7-year-old (Easy Mac, Skippy peanut butter, Teddy Grahams, Goldfish, Quaker Granola Bars). Culturally they need to increase the "fun" factor and let people get away from their computers for a couple hours if they want to. Also, the forcing of teams to move around every few months under the reasoning that it forces you to get to know new neighbors in the various buildings... this is not a good idea in my opinion. It stresses folks out and sometimes people end up working in rooms or areas they simply don't want to be in, but didn't get any input in. If you want to get people to work in different clusters more often, give everyone laptops and create coworking spaces around the office where anyone can hook up to a power supply, some external monitors, and a CAT-5.