Pros
I don't know where to start, love my job. The work is extremely interesting and after I proved myself I was given a lot of room to run. The screening process is really good so everyone is smart, competent and cool in some capacity. There are no idiots so it's really nice place to work. The company is also lean and flat so you have direct access to the people making the decisions regarding the company, the code and your pay. No endless layers of management, no "Peter Principle", not much room or time for politics. Employees treated with respect and dignity, no one micro managing you, if you finish your work just roll out, don't have to ask permission, as long as you perform no one really cares what you do within reason. The company is very anti meeting unless they're absolutely necessary. I spend less than 5% of my time per week in meetings. I get to code and solve problems. Was talking to a friend and was asked "do you like going to work?". It's nice to be able to answer "yes" without thinking about it.
Cons
It can be pretty stressful because we're busy, but I'll take busy over bored any day.