Just some thoughts that I have had for some time about working for an IT services company. I have done both, so I can speak to this for sure. I have noticed that engineers coming into the company that have never worked for an IT services company before typically see a HIGH jump in their skill set within the first 6 months. Their skill set usually continues to climb throughout their employment with the IT services company. This may not be so true for a large sized IT services company, but for a small to medium sized company like the one I work for, I generally see the skill set curve climb on a continuous basis. Even now, as I have been with this one company for over 5.5 years now, I still see my skill set curve climb. I see new technologies all the time that build upon my current skill set. I can recall the days when I worked for a single company that my skill set climbed as the company decided to do things. Typically speaking though, most companies only did what they 'had' to do and finances where a big factor in that. Infrastructure was low on the priority list unless something actually died. If a server was working great, you might do patches and maybe evaluate security on it. If the routers and switches were up and running, they were just up. You might get to evaluate security and QoS or something, but once you did that, you were back to the same ole same ole.
I specifically remember coming out of a healthcare company after doing a lot of general IT stuff (servers, PCs, network, applications, printers, etc), but really trying to focus on Cisco. I thought I knew a lot about Cisco until I got my first IT services job. I remember thinking to myself early in that job: "Man, I don't know anything". Time sure flies, and our skills only get better as we go along this IT trek. Below is a graph of what I believe the skill set differences are in working for a single company verses working for an IT services company. This does not say its 100% true for every company, but I think for the most part it is.
Now, one thought I had. Don't get me wrong on this. I know people's skills do get better as they work for a single company. You learn new things about the company or even about the general realm of the type of business your company works in. Im talking about IT skill set. YOUR IT technical knowledge gains. Not about IT management. Not that you learned what DSL was or what a switch does. I mean actually working with this stuff.