5 learnings from hiring for an unfamiliar tech stack

I recently went through the process of hiring a new mobile developer for Android and iOS development. I’ve always been a .Net developer so I wasn’t very comfortable at the start. As I went through process I realized that it didn’t matter too much that I wasn’t an iOS/Android expert but I still learned some important things.

Intimate knowledge of the tech stack is a small part of the hiring decision

If you’ve hired before you probably use some sort of process like this.

  1. Screen resumes – 100% of candidates
  2. Behavioral interviews – 8% of candidates
  3. Take home tech tests – 6% of candidates
  4. Tech test reviews  – 4% of candidates [** Needs expertise in framework]
  5. Candidate comes in to discuss and review tech test [** Needs expertise in framework]
  6. Candidate meets team
  7. Decision
  8. Offer

As you can see the tech test and review can be outsourced to an expert (with your help). You should be able to do everything else. Even if you’re hiring for a senior developer, getting the behavioral part right is more important. If the candidate is right for the team the tech test decides at what level/salary they get hired.

Your general hiring knowledge will be fine for most of the process

If you’ve hired a developer before then most of what you know will still apply. You can easily short list candidates yourself. In fact after this process I feel far more confident in hiring for technical roles in subjects I don’t know a huge amount about.

In my opinion there are some basic traits I look for in a developer.

  • Attention to detail
  • Intellectual curiosity
  • Resilience – gets s**t done!
  • Can communicate effectively
  • Is not a dick

Of course you consider years of real experience, training etc as this will affect the speed at which the candidate becomes productive but if they’re keen to learn we have an existing code base full of great patterns to learn from and an awesome team who are happy to help out.

Get expert help

OK so you will need to check the candidates knowledge of their framework and their assertions of ability eventually. To do this you need to get help. No other way around it. iOS, Android, Javascript and .Net have complex ecosystems that are evolving far too quickly to keep up or pretend you know about them all well enough to hire for them (erm – unless you do, then sorry).

Luckily where I work we have guilds for iOS and Android. They actively encourage including them in hiring to keep the quality of their colleagues high. If this is your first hire for that stack and you don’t have anyone who can review the candidate just make sure you hire someone very senior – lot’s of highly rated apps in the relevant store, an awesome portfolio, recommendations and solid work history.

You can (and should) review the tech test too

If you have good experience in any programming stack you can do some evaluations yourself that should correlate highly with a strong candidate.

  • How much of the brief supplied to the candidate has been completed?
  • How clever is the general solution, how well structured?
  • Any tests around some critical parts of the code?
  • Can you build and run the code?
  • What kind of comments has the candidate added to their solution?

The expert should focus on framework details

Things that the expert can help you with vary but in general

  • Are they doing things the way the framework designers intended?
  • How many libraries do they use, which ones are common, which are weird and why?
  • Which libraries didn’t they use when it would have made things much easier?
  • How modern is the code – does it use the latest paradigms for that framework?

I like being present through all of this so the candidate has one person they know from all the stages in the hiring process. Even if I can’t contribute much directly. It’s a great opportunity to see how they will work with the people they will have to soon collaborate with!

 

Leave a Reply

Your email address will not be published. Required fields are marked *