How to Hire a Freelance Front End Web Developer the Right Way
Recruitment can be a nightmare. It can be a long and arduous process. And, if you’re looking to hire a web developer, then the technical aspect of this role adds another layer of complexity.
Where should you start? We'll take you through this recruitment process, and assume you have a basic understanding of software development terms and terminology.
What Should You Prepare?
You’re probably familiar with the saying “failing to prepare is preparing to fail” — and it’s certainly true when you want to hire a web developer, or any freelance developer for that matter.
Before you interview your first candidate, you need to have prepared the following:
Specify your Needs
Top web developers are very busy so you need to know exactly what you want and need from a candidate. Don’t digress when you write the job specifications — make sure it highlights what you want from a candidate, what the job or project is about, and what you can offer them.
Set a Realistic Budget
You get what you pay for. Remember to match your budget to the level of responsibility you expect your web developer to commit to. Figures suggest that a senior web developer based in the US is paid a median salary of almost $85,000. For freelance roles, rates can range anywhere from $60–$120 (or even higher) per hour.
These figures will change depending on your location and requirements, but make sure you do your research!
Set Realistic Timeframes
Web developers may need some time before they can start working for your company or project. Make sure you factor this into your recruitment process, and bear in mind that it can take a while to find the right candidate.
If your web development work is super-urgent then you may want to consider hiring a contractor to fill the skills gap until a permanent candidate can be found. And when hiring a freelancer or a contractor, make sure you factor in a web developer’s availability and schedule.
Do Your Homework
A good candidate will have questions during and after the interview process. Make sure that you can explain exactly what you want from your candidate, particularly, the projects you would like them to work on.
What Interview Questions Should You Ask a Web Developer?
Your recruitment process will be tailored to your organization. These are some of the things you should consider doing:
- Initial interview, either through audio or video calls.
- If required by your company, an online aptitude test or competency tests.
- Technical coding exam.
- Final interview. You and the candidate should talk to each other face-to-face. If in-person interview isn’t viable, video call is highly recommended at this stage.
Let’s look at some of the key questions you need to ask your candidate - and what to look for from their responses. Make sure you take notes so you can thoroughly evaluate your interviewees based on their responses to your questions.
Questions Relating To a Web Developer’s Experience
Tell me about a project you're particularly proud of, what did you do that worked out well?
It’s best to ease your candidate into the interview gently. Their response will also give you an early indication of their ambitions, perceived view of success and way of working. For example, did they mention other team members during their answer, or just focus on their own efforts?
Tell me about a project that disappointed you, what would you change?
Continuous self evaluation is a must for a developer. You do not want to employ someone who continues to make the same mistakes.
What’s hard about coding?
This is, for all intents and purposes, another way of asking your candidate what their weaknesses are from a technical perspective.
How do you do testing? And what do you think about this? How would you improve QA?
Good code means a less buggy web application and fewer coding crises. A good web developer should value testing and respect the QA process, because it will cut down on the number of late nights where they try to find an issue which has been uncovered in the code.
How are you keeping up with the latest developments in web development?
In other words, this will determine if your candidate continues to learn programming and makes the effort to stay on top of his skills. You can ask your candidate about their favorite programming-related Twitter accounts and why they like it, for example. If your candidate doesn’t use Twitter, ask which tech publications they read and authors or personalities in the dev world they admire and why.
Talk about your preferred development environment
It doesn’t matter whether your candidate is working with your exact development environment or not — but you do need to find someone who is adaptable to different environments and will voice their opinions. It will also give you an indication of whether they have experience with frameworks, version control systems, unit testing, and others.
Questions to test your candidate’s communication and management skills
What are some of your best soft skills?
You may be looking for a problem solver, brilliant communicator, or someone with a willingness to learn. Ask them to give examples of how they can demonstrate this skill.
When have you solved a problem that didn’t involve you coding?
This could be anything from the time they fixed the coffee machine, or helped a colleague fix their bike. It doesn’t really matter what they did — it just gives you an indication of how they solve problems and interact in the wider corporate environment.
How would the people you’ve worked with describe you?
This is a great way to gauge your candidate’s self awareness and their place within their current team.
You can’t work out how to solve a coding problem. What do you do to find the answer?
Do you ask a colleague, Stack Overflow, or other platforms? There’s no right or wrong answer here. In fact, a combination of both may be the best route. What is interesting is to see whether your candidate prefers to keep their head down or ask around if faced with a problem.
What do you think of pair programming? And have you ever done it?
This agile development technique isn’t always suitable for day-to-day development, but it’s interesting to assess whether your candidate is happy to sit down with a colleague and sort through your code.
Have you ever worked directly with clients or have been in a customer-facing role in the past? If not, would you like to?
In other words, how would your candidate deal with feedback from other people? If you are looking for someone help build your product or maybe even to progress within your organization, then they will have to face tough feedback at some point, whether it’s from users or from within the company.
Questions to test your candidate’s technical skills
Can you describe your workflow when you create a web page or web app?
This is a good way to assess how your candidate approaches a basic chunk of work. Do they use snippets to quickly layout a basic HTML page, add a little jQuery and start coding? Or do they use a more in-depth approach such as Bower or Yeoman?
What tools do you use to find a performance bug?
This will depend on your candidate’s development environment as different programming languages use different profilers and some frameworks have inbuilt debug tools to find performance issues. This doesn’t matter too much, but their approach does.
What do you know about CORS?
CORS (Cross-Origin Resource Sharing) is a HTML5 staple that should be familiar to most front-end web developers. It allows you to request many different resources (jQuery, fonts and so on) from a domain outside of the domain from which the resource came from.
Can you explain the purpose of each of the HTTP request type when using a RESTful web service?
Does your candidate know the difference between a GET and a POST request? Do they remember to mention PATCH and CONNECT requests? I hope so. This is a solid question to assess their basic understanding of HTML.
If you have 5 different stylesheets, how would you best integrate them into the site?
This questions will test your candidate’s CSS understanding. Would they combine them into a single CSS file? Or just combine application-specific stylesheets? And what is their approach if they are using a library, such as Bootstrap?
How do you take into account SEO, maintainability, UX, performance and security when you’re building a web application?
This is a biggie. The ability to balance and understand these very different factors is a core competency for any web developer. Their response will also indicate which factors they will prioritize when coding. For example, if you are a large financial institution, you may favor security over SEO. If you are an online publication, performance and SEO will be more important for your type of work.
What Should You Do After the Interview?
Make sure you act quickly. Evaluate your candidates and immediately contact any candidates that you believe are a match for the role. Web developers are in demand thanks to the tech skills shortage and a good candidate will not be available for long.
There is no real right or wrong way to hire a web developer. But the devil in in the detail. So, make sure you evaluate your needs and your candidate’s skill set to find the perfect match. If you want some more interview questions, you can also check out this extensive list from Github.