Discover a proven way to distinguish your future developer from the crowd and create a process leading to a successful hire.
To hire successfully, you need to know who. Establish details about tech skills, soft skills, culture fit, and the level of experience.
Prepare the questions and processes to filter the best candidates: test task, questions for the technical test, questions for the interview to check the culture and team fit. Ask team members for help.
Combine it all into a smart process. We call it the hiring funnel. Each level filters more candidates and it all ends up with the best fits. We describe the hiring funnel in more detail later in the article.
There will be difficulties because the JavaScript market isn't the easiest one: many developers, many competitors. The process and clear requirements will be your north stars.
If the whole hiring process is too much for you, you have two more options: freelancer or team augmentation. Rethink carefully what are your needs and choose the best option.
Hiring an in-house developer, freelancer, and augmenting your team with a developer from an agency has, surprisingly, a lot in common:
<span class="colorbox1" fs-test-element="box1"><p>You need to know exactly who you’re looking for, for what goals, and how to distinguish them from the crowd.</p></span>
In this article, we’re focusing on hiring, but gathering a solid dose of needed data from the beginning will come in handy in various cases.
The process presented below is based on our experience of screening 1285 candidates and hiring 17 great people.
We explain how to define your future developer, identify them in the crowd, and how to build a process around it.
The result you can expect: an exact gem you needed, empowering your team.
Let’s take you there.
Let’s start with preparing the list of tech skills your future React Native developer will need to augment your team effectively and fit the project requirements.
Write down the technologies they need to know.
Remember to draw a line between the skills that are absolutely required and those that you’re willing to give up if the candidate is promising.
What type of experience do you need for your project? Should your future React Native developer have experience with JavaScript as a whole, including backend development? Do you need experience with mobile apps, or also with web development?
Look at the experience from the time and your team’s productivity perspectives. Hiring a junior will be faster, but they will need a mentor from your team. Hiring a senior requires more time and effort, but they can bring knowledge into your team and take ownership quickly.
Let’s take a look at seniority levels in more detail.
Junior developers have little or no experience. However, it doesn’t mean they shouldn’t have knowledge. A junior React Native developer should be familiar with JavaScript and understand basic concepts of React Native profoundly.
Since juniors often don’t have work experience, you may want to look for someone who has their own portfolio they’ve worked on to practice their skills. That’s a good sign!
A junior React Native developer may be pretty easy to find and hire, but remember that he needs a mentor in a team.
Don’t hire juniors if you don’t have someone to support them.
Mid React Native developers are able to work without mentorship. They usually have a couple of years of experience and already worked on a few projects.
Tech-related knowledge is one, but mid React Native developers should also know how to debug a code, optimize the performance, and integrate the app with external services.
A senior equals someone who can lead a team, design the architecture, and manage a teamflow. If your team doesn’t have a lot of experience in React Native, a senior can help and become their mentor.
Senior React Native developers are very hard to hire. If you need someone with that scope of skills, you may also want to consider team augmentation – developers from an external company can also serve as mentors, share knowledge, and even improve your processes.
Prepare a test task for starters. It should be challenging, for example, using the libraries the candidate doesn’t know. You want to check their engagement and their way of thinking.
On a further level, you can prepare a technical test, and ask your candidates’ a few challenging questions during the interview.
Many recruiters say that soft skills are more important than tech ones because they are harder to learn.
Some soft skills are close to character traits, like open-mindedness or helpfulness. Others, like communication skills, can be taught. While creating the list, think about the skills that are totally necessary and unskippable, and those you’re willing to give up in order to teach them later.
Soft skills also vary depending on the seniority level. Senior React Native developers should have experience in leading a team, great communication skills, problem and conflict solving skills, and time management abilities.
Debbie Foley, the head of global marketing for employer brand and talent attraction at Shell (which is putting a lot of attention to soft skills), says that first, you need to know what soft skills you’re looking for. “Do you need people who can build relationships? Influence people? Build new teams? Deal with conflict? This will be different depending on the objectives of the business, so being clear on the ideal behaviors of a candidate is essential.”
Analyze your needs and prepare a list. Just to name a few traits that can appear there:
Interviews play a critical role in assessing soft skills. There are a lot of techniques, like behavioral questions, situational questions, and reading body language.
John Vlastelica, the founder of talent acquisition-focused consulting and training firm Recruiting Toolbox, prefers using situational questions. Briefly, there are 3 stages John goes through with a candidate:
<span class="colorbox1" fs-test-element="box1"><p>Pro tip: You can also offer feedback and suggest different ideas. If the candidate is excited to hear your point of view, they’re probably better at working in teams. Remember, that being confident in your solution and being unwilling to hear different opinions are two totally different things.</p></span>
One of the skills developers, especially seniors, should have is business knowledge. However, often it’s still a nice-to-have.
Understanding how products relate to business goals and how to make decisions based on business vision is a useful ability that distinguishes a developer. Still, it’s not very common, and more widespread among consultants.
However, it’s a good practice to start familiarizing your development team with business and operational aspects. In the long term, it will tear down the boundaries between business and tech in your company, which leads to making better decisions.
An experienced, knowledgeable, and charismatic developer – a “rockstar” – is a dream of many employers. But it’s really hard to build a good team of rockstars. In fact, A players are often bad teammates. They work great as consultants but not so well at teams.
From our experience, it’s good to aim for the ones who work great at teams and like to learn. With that kind of attitude, there’s a high possibility they will grow in your company.
Look at the matrix below.
Jonathan Siegel, an entrepreneur and angel investor, hires only the ones from the bottom-right square. These are underdeveloped talents, engaged and eager to grow their wings in the right environment. With the right assistance, they can become high-performing developers, remaining great teammates at the same time.
Gathering a team of like-minded people, who share similar values, it’s the first step to frictionless cooperation and satisfaction. Cultural match makes communication flawless, and teamwork more efficient.
If you don’t have your company values written, write them down before kicking off any hiring process. They will be your north stars.
Think about your company’s culture. What kind of people share it? Make a list of qualities.
For example:
<span class="colorbox1" fs-test-element="box1"><p>Pro tip: If you have problems with creating this perfect person, choose a well-known character, from a movie or book, who seems to represent your culture. List the qualities they have that make them so close to the employee that would fit your team best.</p></span>
Then, prepare the right set of questions to ask during the interview.
For example:
You can also use the John Vlastelica technique which we described above.
It will be extremely helpful to invite a team member for the culture- and team fit-checking interview. After the conversation, your employee’s opinion will be helpful. Plus, look for an instant vibe between them. That’s always a good sign.
A hiring funnel is a tool to set up steps needed to filter the right candidates from the crowd.
<span class="colorbox1" fs-test-element="box1"><h4>Hiring funnel — Step by step</h4><ol><li>Candidates screening (job ads, reaching via social media or LinkedIn, brand awareness/marketing).</li><li>Test task (sending a task/small app to do).</li><li>Technical test (JavaScript quiz with open questions).</li><li>Giving specific feedback.</li><li>Interview (checking the team/culture fit called Team-Fit Test).</li><li>Hired/Not-hired.</li></ol></span>
Let’s take a look at the details of each phase.
Start filling the pipeline with potential candidates. Look for the ones who seem to fit the profile you’ve created earlier. Put job offers in the relevant places (job boards, LinkedIn).
The test task is not only about verifying tech skills, but also the way of thinking and engagement. Ask candidates to use a tool they’re not familiar with. It will help you to check if they can find creative solutions.
Time for a few React Native- and JavaScript-related questions, as well as tricky problems to solve.
Give them feedback on the test task and technical test. It’s a good practice to send resources they can use to improve the weakest points.
During the interview, you still can ask tech-related questions, but it’s a perfect moment to check soft skills, cultural fit, and team fit. Prepare questions that explore the candidate’s values, goals, and attitude. Bring a team member for the interview – to know the candidate better and help you assess the team fit.
Inform the candidate about your decision. Discuss openly what they need to improve or give the good news and talk about the terms in more detail.
In your job post, try to speak directly to candidates.
Use a clear job title so as not to create confusion. Include a short description of your company’s culture, details about the job, list of responsibilities, expected skills, and qualifications, as well as benefits and perks. Candidates always appreciate when a salary is revealed openly.
<span class="colorbox1" fs-test-element="box1"><p>Pro tip: the whole job offer should illustrate your company’s culture and values. Blend it into the whole text, instead of writing two strict sentences about it.</p></span>
Job boards allow you to reach a high number of candidates easily. However, you will also receive a lot of applications from non-suitable candidates. Nevertheless, it’s worth publishing the job post at least at a few job boards.
LinkedIn will help you to screen the candidates. You can also publish a job offer there or contact potential candidates directly. The downside is that not everyone keeps their profile updated.
Try screening other social media, along with groups. Developers actively publish specialized content on YouTube, Instagram, and Facebook. You can also look at blogs.
Matching services like Toptal pre-select React Native developers for employees. They help to gain access to a network of top industry experts and find high-quality developers quickly with no regard to cost. However, these services are especially for hiring freelancers.
The famous Toptal Screening Process involves a comprehensive language, personality, and communication interview, in-depth skill review, live screening, test projects, and ongoing evaluation. Typically, fewer than 3 percent of all applicants are accepted by Toptal.
Other similar matching services include Hired and Gun.io. The first one combines intelligent job matching with unbiased career counseling. The second claims to have the most comprehensive vetting process.
Prepare thoughtful questions to check knowledge, soft skills, and culture fit during the interview. Ask your CTO or tech leader for help with the technical part, and team members to participate in the interview.
Gather the toolset that suits your and your team’s needs. You’ll need tools for communication, prospecting, and following-up talks.
A few examples for each category:
Stack Overflow’s annual Developer Survey 2021 (like many similar surveys before) reveals once again that JavaScript is the most popular programming language among professional developers. It’s also the most commonly used programming language for nine years in a row.
How does it influence the hiring efforts?
It’s good news and bad news at once. A lot of JavaScript and React Native developers on the market means that you have a lot of potential candidates to pick from. But JavaScript’s popularity makes it also hard to find true gems in the crowd. Almost anyone can learn JavaScript nowadays, and you need to find someone ambitious, creative, and passionate.
Another consequence of JavaScript’s popularity is that a lot of companies use it, as well as its various frameworks. The recruitment job becomes harder because you need to compete with various companies. And some of them are big and tempting for developers. Recruitment efforts are especially difficult in countries like the USA, UK, or Netherlands.
Let’s say you need to recruit a React Native developer with a specific set of skills, the ability to analyze client requirements efficiently, collaborate with others flawlessly, and compose readable and maintainable code.
The market is competitive and it’s hard to find the gem in the crowd.
How to overcome these obstacles and find the perfect match?
<span class="colorbox1" fs-test-element="box1"><p>The solution is pretty simple. You need a process, engagement, and persistence.</p></span>
A carefully established process, with thought-out questions and activities, will serve as a well-oiled filter, leading from possible candidates to finding a perfect fit.
Experiment with various solutions. Engage, research and screen the candidates. Learn from the mistakes. It will require a lot of work and it won’t be easy in the beginning, but it will get smoother with every candidate.
Time to reassess your hiring options. We know that hiring can be scary and needs time. If the process presented above doesn’t speak to you, you may want to consider hiring a freelancer (for example using Toptal) or leveraging team augmentation.
Hiring a new developer for your team may be the best investment especially if your demand is going to last for a longer time. The recruitment process for an in-house developer is the longest one.
Pros
Cons
A freelancer will join your project to perform a particular task. Freelancers usually don’t take up too complicated or long-lasting endeavors. They can serve as consultants for your team.
You can look for freelancers at marketplaces like Upwork, Fiverr, and PeoplePerHour. These portals give you access to a seemingly endless pool of talent, but it’s up to you to separate the wheat from the chaff – experienced developers tend to move away from them. The alternative is Toptal, where you’ll find top experts, but you need to bear the costs.
Pros
Cons
Staff augmentation means a developer (or a few developers) from a software development company joins your team. They can take up a part of our product you need help with, but their offering is completely different from the freelancer’s.
You can expect other benefits from team augmentation, like mentoring and consulting. External developers can teach yours not only the technological aspects but also the operational ones.
The catch is to find the right team augmentation provider – for that, we recommend looking at portals like Clutch, carefully screening portfolios, and establishing their level of engagement in detail. In our opinion, when the company openly says that they want to teach your team new things it’s always a good sign.
Plus, external developers from a software development company nicely sink into your team and engage in the project’s success.
Pros
Cons
Remember, that with the right preparation, it won’t be so hard to find great React Native developers.
Put some effort in the beginning and then engage in the process. In the end, there’s your prize – a perfect fit for your team. It’s worth the effort. And if you don’t feel it yet – you still have the freelance and team augmentation options.
Good luck!
The Brainhub promise
Every year, Brainhub helps 750,000+ founders, leaders and software engineers make smart tech decisions. We earn that trust by demystifying the technology decision-making process based on practical software engineering experience.
Authors
Read next
Top reads this month
Get smarter in engineering and leadership in less than 60 seconds.
Join 300+ founders and engineering leaders, and get a weekly newsletter that takes our CEO 5-6 hours to prepare.