A month ago, after having a project budget approval, my team started hiring consultants to help us deliver software. We needed positions in UX, UI, QA, PHP and Java development. Pretty standard requirements.
UI and UX were relatively easy to find. Budget plans for these positions were high, so finding excellent talents was not a problem. Since they've been hired, I've been amazed at what they have done to the project and how an external perspective can alleviate political biases in the team. Really, it does wonders. That and sincerity too.
Back to hiring consultants. QA was also simple to find, our expectations were standard and within a couple of weeks, we had found the person who would reason about our test strategy.
The case of developers
Developers, however, were a problem to find. Let me explain how consultancy recruitments take place inside this big company. A consultancy offer is sent from the team lead to sales. Sales then send out this offer to registered consultancy companies. Along with this offer comes a level of required expertise. This level of expertise translates into experience requirements of course, but not only. With expertise comes a price and since it's given by sales, it's a maximum price. And since sales want to negotiate, this maximum price is not given to consultancy companies.
Actually, consultancy companies are not naive and they usually know what their limit is in terms of pricing. This is why we got 0 offers for a Java position in Lyon and some in Paris for a PHP position. Sales are based in Paris and it seems communication between Paris and Lyon got messed up, probably because consultancy companies are region-based and sales should have contacted the Lyon counterpart.
But even for a PHP position in Paris, it was a headache. We usually got extremely junior positions. And by that I mean some of them had not gotten their degree yet. Yes some of them had good technical knowledge but I was looking for more experienced developers to set out on this greenfield project. We got a first one who turned down the offer and then finally got another one who hopefully will stay.
As of today, we still haven't found a Java developer. As a freelancer, I know the state of the market. Good developers are not easy to find but they can still be found, with the right budget. At the start of the recruiting phase, I addressed this issue as it might slow down our project. I warned about recruiting an inexperienced developer at this stage. I've waited until this really became a problem and that it started to slow down the project for managers to react. The budget allows for a better price for Java developers, so let's hope we have better profiles.
Big companies have a limited portfolio of consultancy companies which they work with. I won't explain the reasons why as I'm more interested in the consequences. I know of consultancy companies which put software crafting as their cornerstones. But since these companies are too expensive, they were turned down by Sales. This leaves a limited choice of developers to work with. As well, freelancers are kept as a last resort. This saddens me because it discriminates who is able to work on the project and I know many fine developers who will not be able to work on this project due to these restrictions.
For a team whose primary objective is to make software, I find it really sad that developers are given so little consideration. Not that consideration is dependent solely on the price of course. No, it's more because out of all consultancies, it's considered to be the cheapest one on the project. Seems odd for a software project.
I really hope this type of mentality will change in the future. Software might be eating the world, but some habits die hard.