Many will agree that searching for and hiring a new employee is one of the most exhausting and dreadful parts of managing a company. It's already a long and arduous process for most positions, but filling a technical position can be twice as difficult, especially if you don't have any knowledge of or background in tech. The small pool of candidates available and the specializations required of these positions only furthers the difficulty. So, how do you get an abundance of high-quality candidates without spending so much time?
Having experienced this process from both an employee and employer perspective in the tech and startup industry, I've accumulated some notes and tips along the way that I regularly use during the hiring process. Here's how to hire employees with tech skills, even without any technical knowledge.
Crafting the Job Description
Writing job descriptions can be tricky for most positions, but can be especially difficult for technical positions. With such a wide array of technical skills, programming languages, software, and frameworks in the industry, it's crucial to figure out what exactly you and your company need before drafting your job posting.
Are you building an online platform with user accounts? You'll need a Backend Developer. Creating packaging for your line of products? Hire someone who can design for print. Determining what specific skill sets and specialties you need each position to have is a necessary first step for bringing in the right candidates. If you're not sure about what you need, research the different technical skills and types of positions that are out there to get your bearings.
Unfortunately, the abundance and variety of specialties and languages means it's increasingly difficult to find candidates that can do every single thing that you've determined the position needs. In order to maximize the number of applicable candidates, you'll have to make some concessions to your job requirements list. Choose at least two "needs" that you can live without, and put them in a separate column titled "Nice to Have/Wants". This will help you further boil down what is essential for your employee to complete the necessary tasks associated with their job, and what can be learned later on the job.
If you're not sure what a tech job description should look like, use a tech job description template as a base and browse job postings for inspiration. You'll get a better idea of what the standard technical skills for resumes should look like and what kind of phrasing entices the tech crowd. When searching for inspiration, avoid strict corporate sites like Monster and Indeed and instead look at startup job boards like AngelList and VentureFizz - they tend to have more appealing tech job postings.
Reviewing Your Applicants
Now that you've written your job description, it's time to start reviewing candidates as they pour in. Skills are the easiest starting point for filtering candidates, but also . Although it's tempting, don't automatically discard a candidate that doesn't meet all of your skills criteria.
With so many languages and frameworks out there, it's extremely difficult for developers to know all of them. If you're only looking for "the perfect candidate" that has every skill you want/need, you'll only have a very narrow list to choose from, and you might even miss out on great candidates. Candidates who are very strong in one or two of your required technical skills could still be a good fit.
After reviewing their tech skills, focus on the projects that they've worked on. Job titles and prestigious company names are always attractive, but what the projects they produced will tell you much more about their skill level. A developer could have worked at Facebook, but if all they did there was fix a few minor bugs, they might not be the right fit for a position that will consistently require large-scale feature development. If a candidate doesn't include any projects on their resume, that's usually a red flag.
Ask for photos, prototypes, and/or working links to any projects if they didn't include any already in their resume. Many graphic and web designers have links to their portfolios at the top of their resumes, while developers and engineers might link to their Code Management accounts (Github and Bitbucket are most frequently used). Try to be objective when looking at their work and focus on the skills required for your position. If you're hiring a User Experience Designer, pay attention to the flow and functionality of the website/app more than the visual design - it's the reason this person should or shouldn't be a viable candidate.
It's also important to look at the progression of their projects over time. Is there variety in the type of projects, and what they do/look like? Has their skill set improved in any way? Have their projects become more complex? If the answer to all of these is no, that's another red flag. It's one thing to have a preferred method or aesthetic, but it's another to show no growth or change over time. If every project looks the same, the candidate may not be willing to change or adapt to something new or different, and could be set in their way of doing things. It could also be an indicator that there's no desire to learn and improve, which is absolutely necessary in world where new technology is evolving every day.
The First Interview
Now that you've narrowed down your candidate pool, it's interview time! Use a phone interview to weed out those who appear great on paper, but ultimately aren't good fits. An initial phone interview will save both you and your candidate from wasting time, and will allow you to only meet the best fits in person.
Instead of jumping straight into the technical interview, use this first interview to determine whether they're a good fit as an employee and team member. Craft your job interview questions to focus on their preferred work style, environment, and growth potential, as well as what they're looking for in their employer and company. Their responses should give you the following answers about them:
- Are they stuck in their ways, or adept to change/improve/grow?
- Do they prefer to work with others on projects, or work independently/exclusively?
- How do they deal with challenges and obstacles? Will they look for an alternative and forge ahead, or stop and await further instruction?
- How do they deal with scheduling and priority changes? Are they fluid, or are constant changes frustrating?
- Are they actively looking to learn and try new things? Or are they willing to do it only when necessary and prompted?
Having all the necessary skills are great, but that doesn't automatically make them the right employee. It's considerably easier to overlook skill gaps if you know they have the right interpersonal skills to be a great fit at the company - it's harder to make that decision if you do the technical interview first. And if a candidate doesn't have all of the necessary skills but can (and is willing to) learn, they'll be a much better investment in the long-run than one that has all the skills but no desire to grow, learn, or work well with others.
The Technical Interview
Your candidates have finally made it to the end: the technical interview. If the job requires technical skills, their technical prowess have to be tested somehow. Although the norm in many companies is to offer a combination of a standard coding test and a series of whiteboard problems, that's not the only (or best) option.
Have your candidates tackle real-life company examples to see how their problem-solving skills would be applied specifically to your company, instead of an abstract problem that may never actually come up at work. You can use a combination of past, current, and even future cases to get a rounded understanding of where their skill level lies (did they approach the past example correctly?) and how they would approach cases in the future.
You should also do a code review of one of their former projects to make sure that their tech skills for resume are as good as they claim. Looking at their former projects lets you keep your company's proprietary product secure while still going through the quality of your candidates' work. If you're unfamiliar with a specific skill/language/framework (or with any tech at all), ask around your network and see if anyone who's familiar with that tech can volunteer time to review candidates' code for you, or offer some common questions to ask (with typical answers that should be given).
It may seem counter-intuitive, but try to ask more about your candidates' approach to development/creation more than their skill level. Particularly with development, there are multiple ways of combining code in order to reach the same outcome in most cases. Different approaches to development and the reasoning behind it can be considerably more telling about a candidate's skill level than purely looking at whether they know how to write in that programming language. Some things to keep in mind as you ask them about their development process:
- Are they using excessive and/or unnecessary lines of code?
- Are they taking shortcuts and hacking things together?
- Are they factoring in large-scale growth for the future?
- Are they using an older and/or outdated method?
Knowing their approach and methods can tell you whether they're thinking ahead or if they'll need more oversight and help, and that could ultimately be what makes or breaks a job offer.
It's no secret that hiring is a difficult and arduous process, and it can be even more so when you have to hire for positions that are as specialized as tech. Whether you're a veteran of the tech industry or have absolutely no experience in it, these tips will help you find the best technical candidates for your company.
Need more help drafting your technical-hire job description? Book a free consultation with one of Ace-up's premiere Business and Talent Management Coaches.