The amazing recruiting team at Vend have hired a few awesome software developers to add to our already incredible team. But it is hard work. Really, really bloody hard. So hard that I sometimes wonder what we’re doing wrong. Are we looking for the right people? Are we sending the right messages to attract those people? I’ve been thinking hard about what we’re looking for, and what we have to offer, and wondering if those things match up.
I think back to classic hiring articles like Joel Spolsky’s Smart and Gets Things Done for example. Are we asking the right questions in interviews? I’m pretty sure we are, but we could do better. I think about the concept of the 10x developer. Are we looking for unattainable unicorns instead of incredibly good racehorses? Maybe, but our current unicorns would get pretty lonely if we didn’t hire more.
What about our tooling? Should we be looking for a direct match there? There are plenty of opinions on PHP, but that’s only one part of our stack, and a part that we do as well as any modern dev shop, with unit tests, dependency injection, MVC, and – quite seriously – the most robust code review and continuous delivery culture I’ve ever been involved in. I could mumble about HHVM and PHPNG, but that’s just noise. Of course we’re looking at those: we continually evolve our platform just as we also include other tools where it makes sense. I’d list all the bits but honestly you’re better off coming in for a coffee to chat through it all with our crazy-talented devops crew.
It’s particularly interesting to me, coming from a Microsoft dev background, that your average PHP developer has less in common with what we build than does a high-end C# or Java dev. Emphasis on the average in that last sentence, because we all know VB6 caused the Microsoft world just as much pain as PHP; but you could argue .NET and Java have supported good, testable OO coding for longer than PHP has.
Coming back to Spolsky’s post, there’s a quote that highlights my point on tooling:
In software, things change so often and so rapidly that you need people that can succeed at just about any programming task that you throw at them. If for some reason you find an idiot savant that is really, really, really good at SQL but completely incapable of ever learning any other topic, No Hire. You’ll solve some short term pain in exchange for a lot of long term pain.
If I’m brutally honest, I think we’ve boxed ourselves in a little by advertising hard for PHP developers, when what we really need are great developers. 10x developers. Smart and Gets Things Done developers. Developers who thrive on massive growth and solving crunchy problems in a supportive team environment built on Trust and Focus.
Maybe those developers know a bit of PHP, but it’s more likely that they’re dabbling in Node or Go or some godforsaken JVM variant. All I care is that they’re passionate and intelligent, and want to share those talents with a team of like-minded individuals.