The Consultant Disadvantage
If you read last week’s post, you might think it’s all sunshine and lollipops in consultant land. As you surely know, that’s not exactly true. The consultant disadvantage is a real thing and is full of challenges too.
In truth, most of the advantages and disadvantages of being a consultant come down to personal preference. So even though these characteristics are being tagged as disadvantages, they could just as easily be considered advantages depending on the person. Some people will love it and some people will hate it.
Small Margin of Error
Do you remember the guy who walked across those skyscrapers on a tightrope? Not that guy, the other guy, Nik Wallenda. Phillipe Petit of WTC fame was the first guy. That’s kind of what it feels like to be a consultant at times.
Like the tightrope walkers, there’s no safety net for us. We have to make things work and do so quickly. Clients aren’t going to give you 3 months to learn their system. Nor their beautiful mosaic of a tech stack featuring outdated technologies from each of the past 4 decades.
You might have to integrate with a 15 year old SOAP service with a malformed schema that no modern library can handle. Just make it work, Consultant! Aye aye, captain! Sometimes you just have to ask WWMD. What Would MacGyver Do?
You’re an Other
There’s a distinction between you as a consultant and a full time employee. It’s usually subtle in our day to day work lives. I’ve noticed it mostly rears its beastly head in times of stress.
For example, upper management at the client starts pressuring the client project owner on timeline or deliverables. Next thing you know the project owner who was totally with you “as a team” on the project turns into a drill sergeant even if you’ve been delivering like a rock star.
It’s times like those that you know where you really stand. As a consultant, it’s easier to bring you on board and it’s easier to push you overboard. Your existence within the context of a client company is transient. Most people at the client will be great to you. In times of stress though, it’s easier to blame the short-timer.
Constant Change
This brings us to the related topic of constant change. While change is not always a bad thing, the amount of change consultants deal with can be a disadvantage.
As humans, uncertainty causes us stress. As consultant humans we’re forced to become more resistant to this added stress. We become stronger because of it, but it’s still a challenge to manage from a mental standpoint.
I’ve found it’s difficult as a consultant to accept that I can’t become a comprehensive business domain expert at a client. Especially when working at large corporations whose vast business domain is beyond even internal employees’ full understanding.
We just have to accept that we’ll need to focus on a specific slice of a business domain that our project covers. We simply don’t have time to learn the ins and outs of the whole business. It’s far more important that we learn what we need to know quickly and then expand as needed.
An added challenge is sometimes business domain experts may not even be available at the client. It’s not unheard of to find situations where the only discrete business rules are found in code, whose authors left the company long ago. Digging through code for answers to business questions is extremely common.
We as consultants also live an uncertain existence within the context of a client. As mentioned earlier it’s easier for a client to get rid of a consultant compared to an internal employee.
It’s also common to not know what your end date at a client will be. We’ll often be extended at a client any number of times. It’s usually fine, but definitely adds additional uncertainty into our lives which can be a disadvantage.
More Challenging
Generally speaking, clients with their own IT teams don’t bring in consultants to work on easy projects. Unless you have a very specific technical niche, you as a consultant will be working on projects that are failing, have failed, or are beyond the internal IT team’s capabilities.
Coming on to a project that an internal IT team has failed to deliver can be especially challenging. Not only due to the technical challenges of a project, but the IT team may also resent you being there.
A similar resentment often results if client management went straight to consultants for a project instead of giving the IT team a chance to deliver it first. In short, the politics of consulting can be very challenging.
Likewise, technical challenges are abundant as well. You may have great ideas to fix technical deficiencies in the code base, but if the client’s tech lead stubbornly resists them you may just have to let it be. Sometimes it’s better to just lose a few battles so you can win the war of delivering the project successfully.
Summary
Like everything in life there are trade offs. As such, the consultant disadvantage is comprised of several factors. A small margin for error, constant change, being an other, and more challenging projects are prominent ones.
Ultimately it’s up to you whether or not this kind of existence is appealing. Some developers enjoy and thrive in this kind of environment. Some might not even consider these things disadvantages at all. But make no mistake they do make things more difficult, even if we enjoy the added difficulty.