Pros
Management treats you like an intelligent human being. I have yet to experience being talked down to. You are recognized for putting in the work and there is a lot of room for advancement, not just in position, but in knowledge. I've learned so much since I've started here less than a year ago, that I now feel comfortable helping my own team members on some pretty difficult situations. I have been given added responsibility, raises, bonuses, and I haven't even hit the one year mark. This is the place to come to if you are willing to put in the work and want to advance, but it is also the place to come to if you just want to do your job well and go home without any added responsibilities. Please don't join this team if you plan on doing the bare minimum, it will be noticed, and your team members will not appreciate it. The team environment is the best I've ever worked in. I have never had a bad day when it comes to coworkers and this is me coming from a job where I was sad and frustrated every day. Here people pull you up. You look sad and they want to make you smile. They will do everything they can to help you have a good day.
Cons
Though there are positions for advancement, most stop at just a step up. The selection process for their positions could be improved in that they could make decisions a bit quicker as the process can last months without any updates. At times their selections do slightly feel like favoritism, but those that are favorites aren't because they are best friends with management, but because of the hard work they do. Which is a change of what I've seen at other companies. However if you have an inkling of who is applying you can pretty much tell who will get a new position before its finalized. So work hard and make sure you are remembered.