In this blog post, I’ll go over our hiring process step by step and explain how we do it in Locastic and of course, why we do it that way. We developed this “workflow” iteratively, pretty much by trial and error and I’m sure it will evolve even further down the line. The goal was to have a methodology that will work for any job position, whether it’s development, management, design or QA. The steps needed to be universal and easy to follow for all team leads and interviewees, so we divided the process into these phases:
- Determine the type of employee that you need
- Prepare the job posting
- Prepare the tasks and questions for candidates and the team
- Set up an ad campaign on all relevant channels and publish the job posting
- Review potential candidates – 1st phase
- Send out tasks to candidates
- Review solutions – 2nd phase
- Arrange and hold meetings with candidates who passed – 3rd phase
- Review candidates based on test + meeting
- Send proposal & hire
Let’s dig in!
Determine the type of employee that you need
Without going into too much detail, this step assumes that you have a way of planning and tracking the utilization of your employees. Based on the amount of work we have right now, the number of incoming projects and the utilization rate for each employee on a weekly basis, we’re able to tell if we need more members for the Locastic team.
After we determine the number of new employees we’re looking for, we check existing ongoing projects where a team might be overworked (or nearing that state) and the team leads + the project’s manager define the skill set necessary for that role. Also, if we have a high likelihood of closing a deal for a new project where we need extra resources we will prepare the job posting based on that project’s requirements.
Some of the rough parameters we look at are:
- Technical skills
- Social skills (important especially for senior roles – can they teach, share knowledge, lead the team?)
- Culture fit
- Language (sometimes Croatian, or another language is mandatory)
Once we build our employee persona, it’s time for the next step – assembling the job post.
Prepare the job posting
We publish our job postings on our website in a more or less set template which has the following sections:
- A too long didn’t read intro for a quick overview of the most important points of this job position. Pretty much, if you don’t like what you see in this first paragraph you don’t have to bother with the rest 🙂
- About Locastic – a brief description of our company and what we do
- Skillset – this is a list of all the skills we will be looking for from our candidates. It’s an overview of what we expect from our applicants for this role in our team, and it’s usually the longest part of the job post.
- Bonus points (if it makes sense for the position) – a list of extra items that will give you an edge over other candidates. It might be years of experience in a certain setting, knowing an extra language, managing skills, knowing how to use a certain tool etc.
- What’s in it for you – here we state what we offer for this job. We list a range for the monthly (Gross 1) salary which is negotiable based on your experience and performance on our interview/test. Also, we will include some links where you can take a look at the company culture, team buildings, awards, hackathons, conferences and workshops.
- Perks – basically a list of all the different perks of working for Locastic. Competitive salary, flexible work time, bonuses, remote work, attending conferences, team buildings, meetups, and more.
- Application form – here we streamlined the application process. Before using this form, candidates would often just send an email and it would honestly be a mess. They would forget to send attachments or they wouldn’t give enough information. Also when GDPR took place we needed another step where we ask for their consent. There was some extra bit of information that we liked to collect, for example, how did you hear about this job listing, did you get a recommendation, would you like to receive our newsletter etc. That is why we developed this form:
Prepare the tasks and questions for candidates and the team
Each team lead has to actively update and maintain tasks for our candidates as well as keep a list of questions for the interview process. Depending on the seniority level we’re looking for, the questions will vary in difficulty and abstraction. For junior candidates, the questions will likely be more straightforward and technical, while the senior candidates might expect more conceptual and in-depth questions. Also, if we find some interesting facts in your CV we might ask some extra questions to get to know you better 🙂
There is one rule we live by here – it has to be practical and reflect the actual tasks that we do in our daily jobs.
I’ll show what I mean by giving an example of Project Management candidate tasks:
You have received a request for an offer from a potential Hotel client. The request states a very brief structure of the new website and some of the client’s wishes:
- Home page
- Online booking must be highlighted
- It would be good if the home page contains an overview of the most important parts of the rest of the website
- Can Trip Advisor testimonials be pulled directly to the page?
- Overview of all categories and types of rooms in the hotel
- Possibility of direct room reservation
- The client asked for a price of development, what is your next step, how do you determine it?
- Which methodology would you choose to manage the project and why?
- How would you structure your board?
- Based on the given wireframes and sketch write down user stories with acceptance criteria for your team
For the interview questions it would be something like:
- Were the tasks difficult to solve, can you give a comparison to other interviews you did?
- Talk about your experience so far (we insert CV specific questions here)
- A question based on the solved tasks – You said you would use a Kanban approach for managing the project but the structure of your board seemed to deviate a bit from that idea. Can you elaborate on your choices?
- We can see you have PMP certification, was the process of attaining it difficult?
- Do you have any hobbies outside of work?
- What do you expect from Locastic? – and we ask this honestly. If you’re looking for a bigger company, more hierarchy and ways to climb it we might not be the best fit. Is education important, flexibility, team building, bigger salary? It’s important for us to know the candidate’s expectations, just as they know ours.
Besides preparing tasks and questions for our candidates, we also have to prepare for the interview process. There will always be at least 2 people reviewing applications and holding interviews and it’s usually the team lead + another senior (by experience and knowledge). We decide upfront the criteria for evaluating the tasks and come up with a fair system of grading to avoid possible biases.
Set up an ad campaign on all relevant channels and publish the job posting
I’ve kindly asked Toni to help me out with this part, as the marketing part falls under his domain:
Hey readers, Toni here! So the way we set up our ad campaigns depends on the requirements set in the first step of the process. If we’re looking for Croatia-based employees, then we’ll first dip into our community and use the word of mouth method, but if that doesn’t show results, we focus the campaign on social media Ads and the domestic Facebook hiring groups.
But in case that remote work is possible, and the signups are open for international candidates, then we’re trying to think a bit outside of the box.
Aside from standard paid ads on Facebook, Linkedin and Twitter, we also skim through certain Slack and Discord groups that are created for a specific skill set (Symfony PHP, ReactJS) or subreddits for certain software technologies.
Honourable mention also goes for Linkedin’s Recruiter platform that offers a lot of neat features like recommended matches, 1-click-Apply, templated direct messages and other useful functionalities that can save you a lot of time in the research phase.
I have to point out how important it is to track the efficiency of your campaigns, so you can determine where to invest more, and where to reduce advertising budgets. Aside from tracking basic analytics and user acquisition channels, we added the “How did you hear about this job?” question to our web form, and it showed that for the PM position, the majority of top candidates arrived from LinkedIn.
Ok, back to Danilo.
Review potential candidates – 1st phase
The first phase of our review process consists of gathering all of the applications in one place, and our platform of choice was Trello. First, we set up a board with these columns:
- Tasks sent
- Tasks solved
- Didn’t send tasks back
- Didn’t pass the test
- Gave up
- Job offer sent
- Job offer declined
I think the names are pretty self-explanatory. Each candidate equals one ticket in Trello where our office manager Ana places all of the attachments that the candidates sent, their letter of application, email and other documents.
The people that will be leading the interviews check each application, and at this point, it’s basically browsing CVs, letters and the structure of the email. How strict the criteria are will depend on the position and number of applications. If it’s an Office Manager role we’re looking for, .docx format CVs and poorly structured emails will most likely be an automatic rejection. Also if it’s a senior role and the applicant is obviously a junior candidate we will automatically reject the application (or redirect it to a junior role if it’s open at the time).
Send out tasks to candidates
Based on the previous step, the candidates that passed the 1st phase will be sent a set of tasks appropriate for the position we’re looking to fill. Usually, the deadline for solving the tasks is 10 days. For a QA role, it will be a mockup app that needs to be tested, for a frontend role it would be developing a small web app and I gave an example for a PM role earlier.
In most cases refusal to do the test will automatically disqualify the candidate. There are exceptions when the candidates give a detailed overview of their experience and skills (for example through their git account, Jira account..) and it’s clear they’re more than capable of solving the test. This doesn’t absolve the candidate of the interview though, where we usually ask more questions than usual to confirm things 🙂
If the tasks weren’t sent back (or are over the 10 days deadline) the candidate is disqualified.
Review solutions – 2nd phase
This is the longest, but arguably the most important part of the process from our side. Once we receive the solved tasks, we check each one in detail and grade it based on previously agreed criteria. Both team members conducting the interviews will leave comments on the Trello tickets for each applicant. We try to be as exact and succinct as possible while leaving enough comments for each task. The goal is to be able to give a review to our candidates (if they ask for one) and also form questions for the next step.
Usually just skimming over the notes before the live interview is enough to remember the quality of the solutions sent by the candidate.
If there’s a lot of applications, we will first do a brief overview of all solutions and disqualify the ones that were incomplete or obviously done poorly. We try to take everything into account, not just the technical skills – is it properly formatted, does it show experience, are explanations conveyed well, was the solution sent on time etc.
Sometimes we revisit the solutions, especially for the first couple of candidates as our criteria might have changed a bit later in the review process. At this point, we decide who will be called for an interview and technically the final phase of our process.
Arrange and hold meetings with candidates who passed
The applicants that successfully passed the 2nd phase are moved to the Interview column on our board. Our Office Manager sends out emails asking candidates for some time in their calendar to do a live interview. We’re available both for online and office meetings.
Usually, we space them out to be 1 (or 2) per hour so that we have enough time to talk with our potential team members and write down some remarks for later.
Our interview consist of 4 steps:
- Introductory questions – Was the test difficult? Can you tell us more about your work experience so far? What was your favourite project?
- Candidate specific and technical questions – In your CV we can see you worked both as a developer and later as a PM, can you tell us more about that? We thought the way you solved the third task was great, have you faced such a situation before?
- The mandatory question in English (if the candidate is Croatian) – most of our communication is in English, so if the whole interview isn’t conducted in English in the first place, we will have a section of the interview where we test English speaking skills. This will be more or less important depending on the job position we’re looking for.
- Outro questions – What skills would you like to learn in the near future? Do you have any hobbies? What do you expect from Locastic?
We try not to write down notes while doing the live interviews to keep the focus on the candidate. After the interview is over we will leave a couple of remarks if needed for future reference.
This part of the process is just as important as the previous step as we had cases where the tasks were solved very well but the interview left a bad impression.
Same as before, we ask practical questions and things that will actually matter once you’re employed. No “if you were an animal which one would you be” cringe stuff. The attitude of the candidate also matters a lot, not in the sense that we ask for fake hype or fan behaviour, but general negativity and complaining probably won’t get you far.
Review candidates based on test + meeting
In most cases, we already know who our best candidate is in the previous step, but sometimes we have a close call and need to review our notes once more and decide who to send the job offer to (if it’s only 1 position open). Here we will review the tasks, the CVs, the interview notes and think about the company fit.
If we can’t decide by ourselves, we will ask other team members for help and opinions. But as I’ve said, usually we already know who it’s going to be at this point.
Send proposal & hire
And of course, the final step is sending the actual proposal to our number 1 candidate. Nothing is set in stone and sometimes a bit of negotiating takes place before we close the deal. After we have our new candidate, they enter the onboarding process, but that’s a whole other blog post 🙂
We always make sure to give an answer to all candidates at each step of the process and keep them informed of the timeline. We might sometimes even ask for some feedback to improve our process and make it more fair and relevant for the given job position.
Hope this was an interesting read, if you have any comments I’ll be more than happy to answer! How do you handle hiring in your company? Let’s Disqus below in the comment section.