It's a growing company. There are growing pains. Systems will get changed repeatedly. You'll get trained on how to do something then it'll get all switched up when they find something better. It's part of it, just be flexible.
Sometimes you'll have to work at night or over weekends. Servers only go down when people are at home. This won't change no matter where you do IT. Be a team player, be willing to do some overtime. It's not a crazy amount usually and if you're honest and tell them you need more or less they'll work with you. But don't purposefully avoid everything, makes it seem like you don't want to be part of the team. I have a baby, it's rough sometimes. But you can work from home, I mean... what more can you ask for?
Vacation... vacation is a bit bare. Haha. I come from 30 days off a year and starting at Diamond it's a big blow to family time. The amount of days increases over time, but that's probably my only real complaint of Diamond.
It's a small company/medium company. This is a pro to me, but for some they're not used to it. What you do and say, both good and bad, will travel around.
Some customers get cranky. Some are always difficult. It's just how people are, if you're not a people person than consulting probably isn't for you.
You need to show that you're working towards something. This can be a 20 year career place, but don't come in as a level 1 and then not get a single certification or anything for a year. Eventually someone else will come along who does do that. You have to continuously improve, it doesn't need to be overnight, but don't stagnate yourself. IT isn't a field where you learn it once and you're done.
The senior engineers know a lot. Sometimes the things they do were the right answer 10 years ago. Technology changes fast, sometimes things change. If you come in and you think you know a better way you might be right. But at least prove you're worth first before dismissing everything. Along those same lines, sometime's you'll use inferior systems because it's what the top level engineer wants you to use. Just try not to start drama match over it. Be a team player, prove your knowledge, than open your mouth. But it can be frustrating. I get it. Meetings in front of everyone are not the place to bring it up. I have questions constantly, just know when and were to ask them. Be humble if you're proven wrong; or even if you're right.
Finally, time is how we bill. We use a ticketing system. You'll feel like every minute of your time is micromanaged and if it's wrong you'll be immediately asked to correct it the next day. It's annoying and sometimes a little patronizing. But it's how they make money and how they are sure they are fair to their customers. There is a lot of pride in how we treat our customers. As much as I hate to do it, I don't have a better idea. Until I do I try not to complain. Just be aware when you come in you'll have to do tickets, back to back, with no missing minutes between. That doesn't mean you cant take a break, but it does mean that you have to be able to manage your time and account for yourself. You can't be lazy here.