Today I've told on a mailing list - by accident - I was glad I got out of IT consulting. Never to come back. As a reward I was challenged to elaborate on that. Right... But then again, it's no secret. This is the occasion to get it off my chest then.
It's a long lecture though ! I didn't know I had so much to get off. :-)
Keep in mind though this is about IT consulting in Belgium. And in my little country a consultant usually isn't freelance. But rather employed by a company which business is to send their people - consultants - to work onsite for IT projects. Usually at the customers headquarters. So bear with me if in your country "IT consulting" means something else entirely. :-)
Personally I think the idea of IT consulting as described above is okay. In theory that is. You have a company car, advantages and are usually well paid. Materially speaking, there's usually nothing to complain about. You'll be in touch with much technologies, people, domains, etc... If you can keep up the pace, you'll prove your worth and you'll become a living encyclopedia of software development.
The latter is something I personally appreciate. Because learning is something I like in this profession. And never can get enough of it. I never miss Devoxx and am always reading a book or three. The reading backlog almost literally reaches up to the ceiling.
Alas, from back in the nineties to now I've seen consulting becoming a grim, absurd and impersonal branch of the trade. Being a consultant used to be reserved for the best. And the longer you did this profession, the more you were respected for that. At Oracle Consulting, the principals had a god-like status. Because they really could do impressive things. And were given prestigious projects. It made no doubt their rank was well-deserved.
But today... With all due respect, consultants are considered cannon-fodder. I can't speak for everywhere in Belgium of course. But I my case I can certify it declined steeply in the last decade.
So... Why did I leave ?
- It's impossible to specialize. The direct managers are indifferent to the experience of their subordinates. They're resources they have to allocate asap to a project. Regardless whether this makes sense or not. Even if a better match is about to become available. I'm talking about a match concerning experience/place/profits. And how many times it appears later they didn't even care to check for projects when it was known when the current project would end ? Arguing is usually a bad idea for your next evaluation.
- There's no consideration for the consultants. How often did my direct manager say something that implies he's plain ignorant of the technologies his subordinates apply ? Or that he just don't care ? It's not exactly surprising then he'll be trying to put you at work any place that's available next. (I've got a perfect match for you. You're developing software, right ?) Consultants are people perfectly capable of deducing facts from what is (not) told to them. Because applying logic is our trade.
- Keep eyes in your back. The last years I took the habit to keep a project journal. It served me on occasions to refute accusations of incompetence from my own hierarchy. I still keep a journal. Even if it's just for looking back what I did.
- You're on your own. Another consequence of not being considered by your manager is that he won't protect you from the surreal decisions of his managers. He simply drops it down on his own people. Don't try to argue either. With the known results if you do. Another evidence these managers don't care about their people.
- There is no training. My personal experience is that you have to cope with anything thrown at you. Which happens quite a lot because they drop you in the first starting project. Which is usually urgent to start. So there's no time for training. Etc... It is coincidence if you already knew something about the technologies the customer wants to apply.
- It is very hard to get a raise. Personally I've got my raises when changing jobs. It looks like they don't care you leave. If you leave you'll be replaced anyway. So why bother paying you more ? You better negotiate well when applying for the job. Because getting something after that will be difficult. I remember for one of my employers I had to ask the customer to send feedback about my work onsite - right before my evaluation. Because I knew my manager wouldn't bother to ask for it to the customer. So, how can they actually tell you're any good ?
- Brown-nosing pays. Unfortunately, very often this brings you a lot further than proving your valor at work. Also for getting the "good" projects. You'll have a much easier life if you do. I know quite some managers being sensible to that. They're usually also sensible in the opposite way when not being flattered. I belong to the latter kind. But I don't regret it. I was well-considered by my siblings and customers.
- There's no long-term for technical consultants. In consulting you either go sales (not me), management (been there, done that, ran away) or technical. In the latter case you go from junior (and ignorant) to principal (been there for some time already). The latter case knows only two kinds who stay: the submissive kind (not daring to say no) and the flattering kind. If you are neither, you'll be in conflict very quickly with your manager. Because you're not impressed any more and thus argue the sense of things. Which they don't like. I can assure you that I wasn't known to be rude. But I got my share of reactions nonetheless.
Finally, at the end of the day, I had an illuminating moment that I got "too old for this shit". I like my job but I don't want to flatter or be submissive to keep it. Hence it was time to move on and leave it permanently behind. It is a kind of job one does not forever anyway. At least now I know why there are almost no "old" consultants left.
One might ask whether there is any good being a consultant today ? Yes, there is: If you're young and willing to learn fast. You will be able to start easily, earn descend money and will be learning a lot very fast. But not otherwise.
To be honest, I'd rather say you don't start in IT consulting at all. Spend instead more time to find something in a domain you're personally interested in. It will take longer, but it will pay off. Even if you won't earn as much in first time.
And in the end... you might even be respected for your accomplishments !