Pros
For me? I've had five years here.
In that time, I started at a fairly decent rate, and I make almost half it again every year in bonuses (on-call and holiday, but then again, I also do more time on the clock and volunteer more than anyone except senior management). I've never had to ask for a raise, and when I asked for a perk (a senior tech left, and I offered to take a few extra hours a week to cover the gap if I could telecommute 100%), they gave me a sizable pay bump too ("you volunteered and showed you're committed, and we're pretty thankful for that").
I came in as a project tech from a major Austin tech vendor, and since then, I've learned quite a lot about systems I've had no clue existed. I've gotten to play with new tech, rebuild old stuff, see all kinds of weird setups, and expand my knowledge. Because of that, I've been able to tack several things onto my title that I didn't think I'd be able to have - let alone get to experience - until I was in my 40s (7 years out).
At the moment, I work remote 100% (my choice to take long hours as a senior sysadmin, plus long-term reliability, is what led them to let me have that), but when I was in the office, it wasn't bad (sodas and coffee, food delivered 3 days a week - and not bad stuff, either, stuff like Mod or Chipotle or mom-and-pop joints - and I had a pretty good view of a small field with trees outside my office).
There's always room to grow and learn, and with the new management model, a tech could crosstrain skills should they want to (e.g. while on tier 1, they could learn IP telephony or hardware).
The office is small enough that if you're in it, you know everyone there, but at the same time, if you need to move to another city where we have a branch, management will let you transfer there (e.g. from Austin to Dallas / Atlanta / Denver).
There's occasional teambuilding weekends (LAN parties, events out) with food and drinks provided (e.g. beer, soda, snacks, pizza, etc).
Something they've said lately has really resonated - management wants to make it a place where you WANT to come to work, and more and more, to me, it is that.
Cons
For me, most of the negative stuff was in the past, when we were a firm that was growing from a local MSP (small enough that we could all go out to lunch together every day) to something nationwide. Growing pains brought uncertainty and stress, and we all handled that differently - some well, some not so well. There was a lot of stress all around, and I'm kind of sad to say that I was one of the ones who didn't handle it as well as I should have (up to and including yelling in the office).
Once the transition from small to large was over, it got better. I may not always have agreed with where everything was going, but it was explained to me why it was such.
A lot of the issues came from interpersonal communication with other techs - we (the helpdesk and techs) were, as they said in the IT Crowd, "STANDARD NERDS." This, fortunately, was one of the other things that was addressed. I'm not ashamed to say I let my ego get in the way a lot of the time.
Some techs complained about the on-call rotation. It was overnights for one weekend every few months - speaking as someone who enjoys long hours (and regularly does 60), I thought it wasn't too much for them to get their life in order so they could do one on-call every six months or so. Same thing with the requests for volunteers for weekend tasks (site moves, special tasks, et cetera).
There was the occasional pissed-off client, but it's a fact of life, you'll see those in IT. It's all in how they're dealt with and the situation resolved.