This year I have started (again) to entertain thoughts about joining a consulting firm.
While I’m fairly satisfied with my current job, there are a couple of things that bother me. So I started thinking about what would I be looking for if I was to make a career move.
So, here’s the list.
Yes, I am that shallow.
Where I am right now, I can’t do shit on my own.
On one hand, everyone on the management is talking about self-organizing teams, running hackathons and generally being agile in every way possible.
But in reality? It looks like although the teams operate in an agile way, the system and its integration makes it all feel rigid anyway.
You see, the solution is built on microservice architecture. In theory, this should give the teams freedom of how their services are built. But in practice, the integration of those microservices has been done so complex that it requires a very thick set of common libraries. This, plus there is a policy that all the microservices, regardless of how small, must be based on an internal service template. The template itself incorporates DDD tactical patterns and CQRS. Both very verbose and heavy approaches.
In addition, there are those fucking roles. There’s a separate tools team that rules over automation tools. To make a change on AWS, you need to go through an infrastructure engineer. To create a new service you need to get in touch with the platform integration team and register it in two separate places. And if you want to make a change in the common library… well no one who went there ever yet returned.
The organization does not want to do that, but effectively it forces everyone into small areas of specialization. Just because doing anything outside of your daily duties, is so much hassle.
Ok, enough. This post was not supposed to be a rant.
More diverse environment
I can’t believe I’m saying this. I don’t usually think about this stuff and actually roll my eyes on how over-sensitive tech-twitter can be. But being the only one foreigner in the office does teach you a thing or two about not belonging. It sucks and it makes me realize how important diversity is.
Ironically, the people can be super nice, and make a genuine effort to be inclusive, which I am hugely appreciative of… But it can not replace actually having people around you who are more like yourself.
More problems requiring creativity
Creativity and problems are the secret sauce of life. People thrive when they have interesting problems to solve and challenges to conquer. Probably that’s why we love playing games so much.
And creativity is just the best. It’s like the opposite of boredom. I know that it’s not but in my book it is. Exploring your ideas and experiencing what works and what not to finally find a beautiful solution gives a lot of satisfaction.
Greater variety of teams and projects
Greenfield projects on In-House gigs are few and far between. Sooner or later you are stuck supporting the same set of products and services.
In many respects, it is nice because it allows you to grow a sense of ownership. But then again, much depends on the company culture. Sometimes it just feels like running errands for someone else.
New projects mean new, exciting challenges and an opportunity to try out new technologies or approaches.
Switching teams can also teach you a lot. Firstly, you get to learn from more people. Secondly, you can experience how different team cultures work out. And also, you will work with different tools and practices built around them. It is a lot of great learning.
Plenty other stuff I already have
There’s a lot of good stuff that my current job already provides. I realize that because I’m a thoughtful, thankful and wise person. But since there is no itch to make me acutely aware of those things I will not write about them. I will just hope that my next workplace offers all of it as well.
So why consulting?
I did some sort of consulting in my early years. Did some web pages for small businesses, and was sub-contracted to write a mobile game or two. But that was ages ago.
I’ve never done any high-profile technical consulting. And I consulting and I might have grown some romanticized vision of it.
You know. Lone Wanderer joins a Guild of Mages. The guild has a shitton of problems and the Lone Wanderer just comes and solves them all. Using unique insight and ninja skills he just owns the situation. All rejoice. Lone Wanderer wanders off towards sunset to join another guild.
I might actually write that book!
Seriously though, how does consulting relate to my needs?
Well, at least in Oslo senior consultants make a lot more money than In-House developers. And I don’t mind working more if it’s on an interesting project.
From what I hear, consultants get more authority over how products are built. They are hired for their expertise and are paid by the hour and I think this works on people’s subconscious. It feels like it is a priority to make sure that there’s nothing blocking a hired consultant’s path – otherwise, the company is losing money. In-house devs, on the other hand, are often treated as if our time didn’t cost anything.
Consultants change not only projects and teams but also get to work in different industries on a completely different subject matter. I guess it might be tiring after some years, but exciting as well.
None yet. I guess I’ll ponder a bit. Probably poke the marked some. We’ll see what happens.