Hiring a good software engineer is tough. This article provides some helpful tips on networking, recognizing talent, finding hiring websites, etc to help non-developers hire the best possible software engineers. Before we go further, make sure you take a look at our recent article: The Best 5 Job Websites to Find and Hire Freelancers.
Know what makes a good engineer
Keep in mind that it’s going to next to impossible to properly evaluate engineering talent unless you’re a software engineer yourself. While you should definitely include someone like this from your team in your screening process, there are certain equally critical things you should be looking for in the meantime.
In particular, just as important as technical know-how are problem-solving skills, professionalism, and communication ability. Can your candidate explain complex concepts in terms that are easy to understand? Their communication skills must be good enough that you have a clear grasp of the tradeoffs of various architectural decisions they make, and are fully aware of what they’re working on at any given time.
Use a good talent network
Unless you’re extremely lucky, you’re probably not going to meet the perfect engineer at your local holiday party. They probably don’t live in the same country, let alone city, as you. In order to make sure that you get the best talent available, it’s absolutely vital that you use a trusted company to help you find a engineer. Whatever small cost you’ll have to pay for the match is going to be far lower than the cost of hiring an inferior or imperfect designer. For the best, sleekest option here, we recommend you try Toptal, a solid company that has a rigorous verification process for its engineers and a great white glove service for clients.
It’s all about the talent
Consider two options: a talented software engineer who’s going to work for you for a few months, or a so-so engineer who’s willing to work for two years. Which do you choose? The answer should be obvious: it’s always the right move to prioritize talent over permanence. Most of the best engineers are going to be looking for better and better jobs, and won’t be doing freelance forever.
Your goal should be to snatch them up for a bit of time while you have the chance, rather than rely on inferior engineers who are willing to stay around longer. Here’s a hint: if they’re willing to stay around forever, they probably don’t have a lot of other options, which suggests that they’re probably not so great at what they do. Another benefit of prioritizing talent is that talent attracts talent. The more dynamic, skilled engineers you have working for you, the more likely you’ll be able to convince other talented freelancers to come work for you.
Culture, culture, culture
In any industry, employees consistently rate office culture as one of the most important factors in their decision to remain with – or leave – a company. Even if your freelancers aren’t working for you in person, forging a creative, dynamic culture that fosters ingenuity is key in order to retain quality engineers.
The more upbeat and motivated your office culture is, whether it’s online or in person, the more upbeat and motivated your employees will be, and the more likely you’ll be able to get your most talented engineers to keep working for you rather than move onto more challenging or fun projects. Another benefit of a dynamic office culture is that you’ll encourage creativity: the more your engineers feel that they have room to push their limits, the more likely they’ll be to come up with innovative solutions to design conundrums.
Build a team
There are a lot of aspects to building an effective team. One is that it’s better to have a couple of really good engineers than one amazing engineer and a couple of idiots. While you always want to prioritize talent, you also need to make sure that you have a deep bench. If you only have one super-capable engineer, you won’t be able to trust most of your team and your one hotshot will probably end up finding a better job.
Building a team also requires that you identify which engineers are going to be well matched for particular tasks. Make sure you to retain a balance of different specializations to keep your company as adaptable as possible.
With these helpful tips, be sure to get the talent you need for your team!