Last year my employers engaged a firm to do a non-core (and frankly, annoying) IT project. We reasoned that their experience in their domain would mean that they'd have a better chance of success.
It turned out that their business was built around software from a third party supplier, and a thick veneer of bullshit. Of course, there were issues. What floored me was that these consultants were helpless, like a 10 year old flying an aircraft. They didn't have any expertise, or a plan B.
We ended up escalating to their supplier, and in the end I fixed the issue with some bash scripts. This wasn't a good outcome; I didn't want to be the hero. I would have been happier to be told that under the bullshit and the organisational silos was a root cause that had an ETA for a fix. A week after I declared hollow victory, the root cause was fixed. Bah.
Fast-forward a few months, and we need to do some similar projects. Naturally, I won't be going to these consultants who are selling billable time. I've been offered someone (from another organisation) who can do "some of the boring work", but that misses the point: the rise and rise of APIs (and dynamic languages) mean that there's a decreasing need to throw people at our problems.
If I'm going to accept any help, it's got to be someone who can look at the problem domain, choose a tool and then write appropriate scripts (if needed) to reliably solve my problem. If your business is built on humans racking up billable hours to do tasks that can be automated, all I can say is this: