I joined Scott Logic after working for a product company for more than five years. There are some interesting differences between working for a company that provides in-house development and working as a Scott Logic consultant.
There are of course the obvious differences between the two, which may depend on the company that you’re comparing consulting with. For a start, consulting is a client-facing job, where you’ll be dealing with people outside your company on a daily basis. That changes a few things. Commercial knowledge becomes more relevant, as you may be pulled into a commercial conversation with clients. This of course increases with the level of seniority you operate at within a consultancy.
Being client facing means there are higher requirements for diplomacy and communication, less crucial in an in-house position. Another obvious difference is the level of change and adaptation required from consultants. You may need to change your technical stack completely when moving between projects. I believe this helps to stay at the cutting edge of technology.
However there are some differences between these two areas that are not immediately obvious when looking from the outside in. When it comes to job satisfaction, there are a number of other areas to look at , such as motivation. I follow the ideas of Daniel H. Pink’s Drive, a fascinating book about motivation and job satisfaction. The author argues that what matters most are autonomy, mastery and purpose. So, let’s see how consulting and in-house development compare in these categories.
Autonomy
Autonomy, or our desire to be self-directed. The more autonomy we have in the workplace, the more engaged we usually are. We want to be able to complete tasks in the way we think best. This, I believe, is especially true for software developers!
Do working in-house and autonomy go well together? There are a few sides to this story. On one hand, being on the inside could mean you’re watched less closely, but it may also mean you’re required to do things the way they’ve always been done in your company. You may be lucky and be able to choose your own projects and products, but more often than not, you’ll specialise in a specific product or area. You're more likely to be limited to specific technologies that are already in use.
I feel I’ve gained autonomy as a Scott Logic consultant. Working for a consultancy gives you opportunities to work on different projects and technologies, while keeping the same job and staying on your career track. You’re able to try different things and Scott Logic always looks for a good fit between what someone wants to do and what projects are available.
As you become more experienced as a software consultant you’re often brought in as an expert, to lead and establish best practice and processes. It’s a fantastic feeling not only to have that autonomy, but also to see the positive impact it can bring. Of course, nothing is black and white and consulting also has its challenges. Sometimes you need to win trust from the client before you are given that autonomy, but I see that as a welcome challenge.
Mastery
Mastery is the urge to continuously improve your skills. It’s also the area in which I believe consulting has the greatest advantage over in-house development. Rather than working on a product, when working in consultancy, the product is you - the developer! This really changes the company's approach to investing in its people and encouraging learning.
At Scott Logic, the most important product is the quality, skill and knowledge of its consultants, and I find it inspiring to be surrounded by like-minded developers, from graduate level right up to our CTO, genuinely dedicated to constantly learning and getting better at what they do, as well as sharing their knowledge and helping others along the way.
Purpose
Purpose is the desire to do something that matters. When you go to work, you want to make a positive impact and see that what you do makes a difference. And making a positive difference by delivering a product used by thousands can feel pretty amazing. But unless you’re working for a great start-up, or a company that constantly keeps disrupting the market with a new idea, a high-end consulting company compares quite favourably here!
In my experience, the kind of projects Scott Logic is involved in are crucial to the client; so it’s important to get the best people they can, to deliver the project well and potentially introduce something new to the company. In these circumstances, it’s easy to see that your work is meaningful and makes a positive impact.
In addition to client work, many of us consultants find time to volunteer to teach code through Code Club and other similar charity organisations.
Career prospects and progression
This is something I’ve found interesting and quite different from the technologists’ average experience in a product company, where you have to really work to not be seen as just a developer. Being promoted is hard in this environment, and stepping outside the traditional development role can be very difficult. At Scott Logic though, technical excellence, together with consulting experience, is a mix that can take you anywhere in your career.
Many people at the top of their careers are still highly technical and help run the company. You can be a software development consultant and go on to become a client manager, a head of user experience, run a whole office as head of development or even become a CTO! There seems to be no limit to where you can end up if you start as a consultant!
To sum up, it’s important to remember there are no two identical companies. When it comes to being an in-house developer in a product company, you may have had very different experiences to me. But I want to highlight the fact that consulting offers a fascinating alternative, where you can really feel like you’re in the driving seat, taking your career further. When you’re gaining more skills and encouraged to take more responsibility on client projects, and the goals of the company are closely aligned with your own, it can only lead to great things!