Pros
Work can vary from entry-level up to senior positions. You can get advancement in career and learn new things - if you're willing to (unfortunately company won't help you much...) Entry-level work can be mind-numbing, but there is possibility to move forward towards more complex stuff. Depending on position and team, you have possibility to really work flexible hours - as long as you are available for major project or customer events and get the work done. You get issued with laptop and internet connectivity/VPN to work from home if you have work outside normal business hours. I am lucky that my team has very low fluctuation, very good and helpful people and great relationships within teams.
Cons
- Shift hours to cover different regions, which many people find unacceptable. - You are too tied to your position, your role, even though your work may be interesting you suffer being too specialized, compared to broader spectrum of knowledge you need to maintain in smaller companies. - Poor opportunities for training provided by employer. Most of the things you need to learn to advance are from your own resources. - Salary is OK for this region - if you negotiate it during hiring process. Then you are stuck with few percent/year even on promotion or when changing roles. Job-hop to advance money-wise. - Company is too much tied by rules that may not make sense given how fast IT is growing. - Lower lvevel managers lack proactivity and fail to step-up for their teams. - Decisions take too long and are not communicated properly