Tech savvy entrepreneurs know all too well a high performing, software development team is the difference between successful product launch or failure to meet consumer expectations.
Recruiting developers can be quite the daunting task, especially if you have no coding experience or if you’re an absolute newbie to software development.
We have sat down with our CTO, who provided their 10 tips for evaluating top development talent:
Skill and culture specifics
Create a list of all the required skills the person needs to fill the position, as well as bonus ones the ideal candidate will poses. There’s no such thing as a “perfect candidate”, however you can come pretty close.
When hiring an iOS developer for example, he or she must know:
- Objective C
- Control Flow
- Classes, inheritance & initialization
- Error handling
Which have to be evaluated during the initial screening process, however if it would be a bonus if they knew PHP for backend development purposes, but it won’t be used regularly then don’t disregard candidates because they’re inexperienced in a particular programming language.
Being too picky ends in chasing engineering unicorns, thus vastly lengthening the hiring process.
Furthermore, it’s not all about hard-skills as a cultural fit is just as important. Remote teams do not mesh with candidates who require hand holding and if you’re entire company maintains a professional image, then some of the “rock-star” archetypes will disrupt your entire work flow.
Know your company culture, ask appropriate questions to determine what type of working environment the candidate prefers and performs best in.
You can’t grab great talent at a bargain bin price, software developers are in high demand and it’s only going to go up. When eyeing a potential hire research properly and know the real market price as losing a candidate to another opportunity, or overpaying for an under performer can be quite devastating – plus word would get out that you aren’t savvy enough, which has dire long term consequences.
Have a budget, plan around it and know exactly what skill set you’ll get for it.
Software developers are notorious for being loners who don’t do team work well, which would be fine if their only obligation was to code all day. Unfortunately it’s not the case as they also have to respond to requests in a timely manner, participate in mandatory project meetings and coordinate with other team members.
Communication skills are often undervalued, but they tend to be the real deal-breakers for experienced CTOs. Which should come as no surprise, since ensuring your software development team runs like a well oiled machine takes more than just hard skills.
You know what’s the worst case scenario in the software development world?
A developer who ensures you he’s fine and will make it before the deadline, but fails to deliver at the last possible moment, and you find out he’s not even close to submit code, thus he sets the whole project back or even your whole company as a result.
This is why product roadmap deliverable and iteration cycles are the main driving force behind software development – they’re always tied to deadlines.
Provide certain scenarios to potential hires and ask about deadlines. Note their answers and reactions; what happens if they don’t hit deadlines and most importantly, how will they alert their manager when they fall behind.
Coding standards can be detrimental when it comes down to potential bugs, crashes or other issues.
You want to make sure your software engineers will be able to provide clean code, written with industry best practises in mind and with sufficient comments – such code will not cause any issues once someone else has to takes over.
Enforce uniform standards across all aspects of your company, ask for proper documentation to ensure quality – you don’t want to end up with spaghetti-code.
An employee who can’t take feedback is the biggest problem any employer can face.
Unfortunately software developers can take negative feedback or any non-self imposed changes to their code quite personally – this is why your potential candidates need to be coachable.
Ease your software developers in and get them accustomed with the process, after a while they’ll not only take coaching, but will also want it themselves as they’ll notice the true long term value it provides.
Don’t be surprised if a software engineer sends you their portfolio as it’s a common approach, however instead of taking it at face value ask to see a demo of the product. That way you’ll be able to see their skills in action and also check their references by actually confirming they worked on the product.
The most enjoyable interview for a software developer is a live coding test, and rapid prototyping a feature is by far the best approach to see if a candidate really is adept at a certain skill – it’s a win/win for both parties involved.
If a potential hire really stands out from the rest, it might be wise to let them work alongside your software development team to see how well he meshes with the group and how others respond to him – don’t be afraid to try novel solutions.
Watching a developer code while simultaneously having him explain his thought and work process to you can be essential in making the right choice as you’ll experience firsthand if they’re a good fit.
Rushing is never advised as it will land you the wrong fit every time. Create a multi-stage, recruitment process which includes a phone/VOIP screening, an in-person interview, a peer interview and a live coding test. These stages will reveal any red flags before you hire, but also confirm their skill set and ensure they’re a cultural fit as well.
Developers know other developers, even if only by virtue of their profession and the highly specialised industry, but think about your long term goals and try to hire people capable of bringing their networking assets over to your company.
Learn to leverage your employee contacts and networking skills, and never settle for hiring a single developer – plan for the future.
Look for potential leaders when hiring software developers, you might be just starting out, but your end-goal is to have a highly functioning software house at your disposal, which can’t be achieved without charismatic people at the helm.