Recruiting, Don't Suck At It
One of the main reasons you have a job as a software development manager is to guide your team forward and trust them to deliver value to your customer; but how do you get that team in place? You hire them obviously; but todays question is quite simple.
What is your hiring process?
In 2014 I would say I have sat in easily 40–60 interviews, with easily double as many CVs (resumes) coming into my inbox. Now if I was hiring one technical position that would be OK… but no; I can hire up to 6 different role types.
Each one has it’s own process… but each one should fundamentally be positioned around your company and team values to make sure the people you hire are good enough for the team. So once again I’ll make a list of things that come up, how I tackled them and also just some tips.
Don’t Panic This should be rule #1 for every single thing a Dev Manager needs to do anyway but it’s easily the biggest piece of advise I can give as far as recruiting goes. Sometimes the candidates will run dry and there just isn’t anyone to interview/hire; be patient.
Development Has Changed Alot Old ways of thinking and ‘stuck in their ways’ developers are not something you want to bring into your new Agile environment. Your values should be about sharing and collaborations… not politics and pettiness about code architecture.
New teams are learn, fast and able to be ready for whatever is thrown at them.
Decide on a process; then tweak it Just like anything we do within an Agile environment; we need to make sure we are learning from our failures and our mistakes and trying to better the process each time. Interview go poorly… maybe it was you? Not explaining the job properly? Bring some graphics or slides to help you.
Skills are a finite resource This is one of the biggest challenges mentally that you will find when hiring people. Say you need a Developer to work on your brand new AngularJS project. First of all brave decision… and second of all you need to hire people with aptitude; not a skillset.
AngularJS might be completely different in two years so what would be the point in hiring someone with the skills who isn’t a team fit when you should be hiring people with good core strengths who can pivot to any new stack that you put them into.
Core Values For me you need to have some of these on deck to try and place candidates against when you meet them. Pick 5 values and make sure they hit at least 3. You may have someone who is a good communicator, is passionate about their technical experience and also shows honesty in where their skills are lacking. Just because they haven’t showed innovation in their previous roles doesn’t meant they can’t do it; it just means they haven’t had the chance.
Don’t Be A Selfish Idiot Candidate A walks through the door… they are smart, intelligent, good looking, charming and pretty much a God send. But you don’t hire them;
What if they are too good… what if they take my job? No. Just stop. Selfish hiring is what makes teams become awful… fast.
Someone who is an A player and doesn’t want any other A players because they are scared hire a B player.
That B player gets promoted, does the same… then you have a team full of Cs.
Don’t do it.
Knowing The Real Difference The difference between the best developers and an average one is astounding;
PROCEDURE WORK — the best are 2x better than average CREATIVE WORK — the best are 10x better than average The best programmers are up to 28 times better than the worst programmers, according to “individual differences” research. Generally the best developers are underpaid and the worst are overpaid.
How unfair is that.
Don’t Be Scared of Hiring Finally… don’t be put off by the system and definitely don’t be scared of hiring people. Offering someone a job and placing a bet on them is a risk… of course it is. You have no way to see into the future to know if they will stick it and prove a good addition to the team or if they will last as your company. You just need to make sure you do your best to keep the good ones once you have them in the team.
Hopefully this helps someone if they are recruiting. Our interview process has been refined over the past 12 months to something I’m really happy with… maybe I’ll go into it in depth on another blog post.
I also mentioned the amount of CVs I have for all the jobs; we use Trello to try and organise the process… might be worth a deep dive.