It’s not going to be easy – let’s warn you. A 2017 Forbes report informs that there has been a 2,493% increase in the demand for Node.js developers between 2011 and 2015. There is a clear mismatch between the demand and the supply.
If you have an in-house Node.js expert, take on a fast-learning intern and train them. That’s what some experts advise.
If you need to hire a Node.js developer, this is how you need to go about it.
Step 1. Identify the Skill-sets You Need
It is good practice to prepare a full list of your needs. That will give you a clear idea of the skill-sets that are must-haves to address your needs, and the ones you can compromise on, maybe.
Step 2. The Search & Short-listing Phase
This is an extensive and idealistic list, but we have taken care to mark out the non-negotiables.
- Look for someone with 2-3 years of experience as a Node.js developer. When scanning their CVs, check for any record of actively contributing to fixing bugs or developing patches.
It need not be a part of any job. It could be a contribution to the Node.js community. That would tell you three important things.
- The person has good practical knowledge of Node.js
- The person actively follows up on new developments in Node.js
- The person has a deep interest in web application development and custom software
- Check for their knowledge and comfort level with front-end technologies. This is important as Node.js developers need to integrate front-end elements into the design.
- Knowledge of HTML5 and CSS3 is particularly important.
- The Node.js developer you hire needs to have a thorough knowledge of the Agile process and ceremonies that include backlog grooming, demos, planning events, retrospectives, and scrums.
- Scan for their knowledge of Node.js frameworks. The basic framework is Express, knowledge of which is a given. However, Node.js has developed other frameworks like Hapi, Koa.js, and Total.
These have expanded the functionalities of Express. When looking to hire an experienced Node.js developer you must have a knowledge of these frameworks also.
- Check for their knowledge of Model-View-Controller (MVC) frameworks like Rails, Sinatra, and Strongloop. Must-have for a quality Node.js developer.
- A Node.js developer needs to deal with interfaces between multiple systems. That would be impossible without a sound experience of working with RESTful APIs (Application Program Interface).
- Technical knowledge of CSS and GitHub coding is essential.
- The capacity of writing incorporation testing codes, compound design coding ability, and knowledge of accessibility and security compliance constitute must-have skill-sets.
- Knowledge of asynchronous programming. Without it, the time your Node.js developer will take more time than necessary. That is not something you need to accommodate.
Bonus skills in a Node.js developer:
- Knowledge of full-stack MVC frameworks like ActionHero, Derby, Keystone.is, and Meteor is a bonus.
- Experience of working with data-driven and customized web APIs like Sails signifies an advanced skill that could simplify processes like dashboards, real-time chat applications, etc.
- Working knowledge of node package managers like Gulp or Grunt helps in adding efficiency and speed to your web applications.
Step 3. Interview Stage
Unless you are a technical expert of Node.js yourself, we strongly advise you to have someone who is, when you interview potential candidates. It is critical to test the technical skills when you hire a Node.js developer.
- Ask questions about previous and/or ongoing work. Probe for details of the actual work. Do not ask theoretical questions. You may get learned-by-heart answers.
- Encourage a discussion on the recent trends and developments in Node.js. Check for how updated your candidate’s knowledge level is. Probe for future trends understanding.
- A practical test is a must. Set your candidate to apply their Node.js skills to a practical task within a stipulated time limit.
It is a good idea to assign something you’ve already solved. If the candidate can solve it faster than the time taken originally, it is a sure-shot pointer to their efficiency and skill level.
The solutions they suggest will also verify their business acumen.
Non-technical Skills you Need to Check During The Interview
As for any other role, soft skills play an important role when hiring a Node.js developer also. It is as important to check these out as the soundness of their technical skills.
If you think soft skills are not that important for a technical person, think again. In Deloitte’s Global Human Capital Trends Report 2016, 92% of the respondents rated soft skills as critical for a business to succeed. That is 7,000 respondents across designations from 130 countries we are talking about.
It is vital to test your candidate’s soft skills in the following areas during the interview:
- Communication and Collaboration Skills
A Node.js developer with sound technical knowledge, but zero communication skills for everything outside technology will end up being a burden on you.
The same is true about someone who can work exceedingly well on one’s own but has poor collaboration skills.
An easy and effective way to check basic communication skills is to ask your candidate to say something about the self that is not part of their CV.
Pairing up a candidate with another candidate, or an existing team member for a practical task is a good way of checking collaborative skills.
- Problem-solving Skills
Problems will be there in any workplace. How would your Node.js developer respond to them? Find out during the interview.
Ask for a real-life example of a sticky situation your candidate has faced, and how they overcame it.
- Pro-active Attitude and Initiative
Present a problem and check your candidate’s response. Choose a real-life problem that you know of. One that does not involve a life and death situation, but can make a significant difference in the outcome if one proactively addresses it.
What would you do if you recognize that your neighbor’s prized orchid has a rare plant disease and your neighbor doesn’t know that yet?
Something in these lines.
- Emotional Regulation
We cannot emphasize the importance of this skill enough!
Ask your candidate to share a real-life story when they had to work with someone they intensely disliked. Probe for the details of what they actually did. You’ll regret it if you don’t.
The Final Decision
Gather some market knowledge about the salary or per hour rates of Node.js developers in your country. Ultimately, that will have a bearing on our final hiring decision.
If you are looking for one single candidate as an in-house team member, fine. What do you do if you are thinking of outsourcing your Node.js development work?
You still need to go through most of the motions we have described here. But, hire a freelancer or someone from a digital agency?
We vote for the latter. It is always safer to have someone with backup support for your project.