There are myriad techniques and simple tools to research candidates for development roles. When it comes to hiring and building a great team, there’s no single correct process — naturally, hiring managers each have their own personal preferences and methods. In this post, I’ll define and walk through my personal process for researching candidates for development roles within the LLI team.
How I read a CV
The CV screening process is where I begin reviewing a candidate’s application. Let’s dive into some of the more common items that I’m on the lookout for within a CV.
When laying eyes on a CV for the first time, I consider a candidate’s experience and list of technologies to be critical parts of the document. In addition to a link to their GitHub (or another similar platform), not much else heavily impacts my first glance at a CV.
1. Hard skills (and honesty about them)
I speak for many development hiring managers when I say that work experience comes first on my list of priorities. While education and other personal interests are valid information to be included in one’s CV, they don’t contribute anywhere as much to my ultimate feeling and decision about a candidate compared to their experience.
When analysing hard skills, I scan for any apparent irregularities in a CV. For example, if I have a candidate claiming to know 12 technologies but who has only been in the job market for two years and has held three jobs during that time, there’s clearly some math that doesn’t add up. In cases like this, it’s important to me that I follow up with the candidate about his or her experience in detail during an in-depth interview with them.
It’s also important to me that I dive deep into the projects listed on a candidate’s CV, and if possible, I verify the candidate’s engagement in the project. I once interviewed someone who said that he had been responsible for the entire front end development of a project. However, during the course of asking him a series of questions related to frontend development, it became clear that they were actually one of many developers on the project in question (and unfortunately, in this case, the candidate wasn’t capable of doing the entire thing by himself).
In a nutshell, I want to make sure that people are honest — self-confidence definitely has its place (more on that below), but it’s not helpful for candidates nor hiring managers when work experience is exaggerated.
2. Consistency with other platforms
Hiring managers should always compare the contents of a candidate’s CV with their LinkedIn and/or XING profile. In case of any discrepancies, make a note to ask the candidate about them during the following interview. However, if the discrepancies are significant, they may be grounds for turning down a candidate straight away — to me, all candidates putting a genuine effort into the hiring process are capable of creating an accurate and up-to-date CV.
3. GitHub profile
I always look development candidates up on GitHub. Just as in the comparison with LinkedIn/XING, check if what GitHub says is in line with the candidate’s CV (and again, take note of any discrepancies). I also check their contributions to open source projects and how many projects they own on the site. (It’s important that they own these projects rather than have forks of someone else’s projects — having no owned projects is never a good sign.)
Within owned projects on GitHub, I investigate:
- The project timeline
- The number of commits they made (and how frequently they made them)
- The nature of commits (minor problems or serious stuff?)
Remember that, for NDA/GDPR-related reasons, some projects on GitHub can be hidden. Even so, you can usually see the number and frequency of commits that a candidate has on the site across all sorts of different projects, even if they belong to private or hidden organisations.
4. Digital footprint
When Googling a candidate, what else shows up? Have they been involved in some valuable extracurricular work or side projects? Opportunities such as coding education initiatives, local meetups or technical volunteering are great experiences to be on the lookout for.
Let’s talk softer skills
Beyond the CV, it’s important for hiring managers to see each candidate for the unique individual that they are. As hiring managers are searching for someone who will ultimately become an invaluable member of their team, assessing a candidate’s soft skills is another key portion of the hiring process.
Here are a few soft skills that I find to be indicative of a candidate’s fit for a development role:
When I think of professional commitment, I like to reference a developer I know who went from having 10 years of experience and a PhD in chemistry — yet no formal education in tech — to becoming one of the best developers I’ve had the pleasure of working with. Although she had no previous experience in a tech role, she turned out to be very committed and demonstrated a lot of effort towards achieving her goal of becoming a coder.
There are plenty of questions that can be raised during an interview to assess a candidate’s commitment to a role. Their style of communication and critical thinking are key soft skills that arise while a candidate responds to these questions.
As mentioned above, self-confidence can have both pros and cons. In the best case scenario, candidates advertise the best and truest version of themselves and their skillset; in the worst case, skills and experience become “over-advertised”.
In a similar vein to the aforementioned points, self-confidence can be observed and understood during a candidate’s interview. I usually prove or disprove any points of curiosity that I can already see in their CV by further digging into them using targeted questions.
Technology is the key to one’s skill set
To get the most accurate picture of a candidate’s technical skills and seniority level, watch out for their list of known technologies — and take special note of any trivial technologies. While this needs to be considered on a case by case basis, you can consider a candidate to be over-advertising skills if they include third-party services in their skillset (such as Appsignal or Sentry). The reason for such a philosophy is simple: Most of these services can be implemented in a matter of minutes and they are the expertise of a service provider, not the candidate.
On the contrary, if you see a plain and simplistic list yet a candidate has worked for quite some time in different jobs, it’s possible that a lack of self-confidence or “under advertising” may be causing this seemingly contradictory presentation. If this appears to be the case, it’s very important to ask the candidate to verbally expand upon any points that need further explanation.
Simply put, we want to get people who care and who are constantly willing to learn. In my experience, the best demonstrations of this are one’s side projects and secondary experience (as mentioned earlier on in the post). These activities are often a developer’s greatest way to describe and demonstrate their passion.