My Thoughts on Consulting

There are a lot of different ways of doing consulting, so I want to clarify what my approach and thoughts about it is. The fundamental difference between a consultant and an in-house developer is who pays the salary, and that’s it.

It comes with a few pros and cons you need to be aware of.


I like the flexibility using consultancies brings: at it’s best it is a true win for all. Clients can get exactly the kind of knowhow they need, for exactly the time period they wish. Consultants can pursue the kind of work they are interested in doing, still staying with the same employer and having long-term colleagues there.

As a consultant you get to see a lot of different domains and different kinds of organisations each having their own culture of doing software. As we are usually working in a complex environment, that is to be expected: the agile ways of working need to be adapted to specifics of each case.

One aspect that doesn’t get thought a lot is matching people and projects based on the phase they are at. Some people prefer the hazy starts when you don’t really know what the product will be about, and a lot of experimentation is needed. Others prefer the later stages when we already kind of know what we want to build, and need to figure out how to do it well. And so on.

So flexibility in general is good.

But what I really like is this:

Consultants, however, are in a unique position to address the people or process issues productively. As third parties, they have no vested interest in the process issues—no power to gain or lose,no territory to expand or contract, no budget to increase or decrease.

Flawless Consulting, p. 22

Based on my personal experiences, I feel this really is, or can be, true. I can do better work and focus on the outcomes, when I don’t have personal bonuses or my own career development on the line. If the company happens to have a culture that does not support collaboration or change (like the “pathological” culture in the Westrum typology), being an “outsider” can also help maintain your mental wellbeing. Combining this with the opportunity of seeing multiple completely different development cultures is an amazing opportunity to learn.

What you are lacking as a consultant is the deep domain experience, which you need to be aware of, as you need to rely on the in-house people to provide that. You also don’t get the same feeling of building “something of your own”, or at least might not get the recognition for it, if that is something that motivates you.

Being an in-house developer or consultant is not about which one is better, it is just different. I don’t plan on working as a consultant forever, I’m sure I’ll switch to some product company at some point, and possibly then back again, etc. I enjoy the versatile experience I can get at the moment.

The most important thing for the quality of your worklife is what kind of a company you work at. If it is a good place to be and you have awesome colleagues, it doesn’t matter if it’s a consultancy or a product company.