The recruitment process is always a crucial task for businesses. When you have a great recruitment process in place, you have higher chances of landing skilled and competitive workers. The professionals you hire can make or break your projects, and will most likely define the success and growth of your company. Thus, it is important to find the best people for your team.
Today’s business landscape where more and more customers are going digital highlights the need for businesses to do the same. The way that a company takes advantage of technology (be it in the form of a website, an online shop, an app, etc.) goes a long way in determining its success or failure. This makes the search for top-notch web developers even more important.
We at DevsData know that all development projects are a team effort – it is a multi-stage process that connects specialists from various fields. That is why when you are looking to hire a web developer (sometimes referred to as a software engineer), you need to do some homework. Whether you are looking to expand your current team, hire a freelancer or partner with a web development shop, there are a few things you need to know to find a candidate that is the right fit for your needs.
First and foremost, you need to know what kind of developer you need to hire. Some companies tend to forget that the role of a web developer is vague—it consists of different skills and job descriptions for different platforms or projects. If you do not drill down on what type of developer you need for a certain project, you might end up wasting valuable time and resources, and that is something you would not want for any organization.
Here is a quick, short guide on the different ‘types’ of IT professionals based on their specific skill sets.
Are you looking for someone to create the look and style of your project or someone who can implement and code the design? If your focus is the aesthetics, you will want to hire a designer. On the other hand, if you are in need of someone to implement and code the design, then you need a developer.
Both will likely be needed in the development project, but they will each contribute specific skill sets depending on the tasks. While there are designers with basic knowledge of HTML or CSS, it is still much better when you have a dedicated web developer who can use various markup languages and development-related tools to effectively code your site from scratch.
This is where the decision making of your marketing team, business development team, consultants, and other stakeholders proves useful. At the beginning of any development project, you will need to figure out what type of application will work for you and your customers’ needs. Do you want to engage customers only mobile, on your company website, or both?
Mobile app development requires specific tools and expertise of the different mobile platforms (iOS and Android, Windows, etc.) These apps are the most popular options right now (as more and more consumers embrace smartphones), but they are also more expensive, more difficult, and time-consuming.
The next step is determining whether you need a front-end or back-end developer. As we discussed in another post, front-end developers build web interfaces and mobile apps.
The front-end (or user side) is everything the clients (users) see on their screens and it is where all interactions with them happen. Back-end developers, meanwhile, deal with the server-side of the system (the ones not visible to the users, hence the term back-end). This part powers the front-end and creates logic for websites and apps, and includes functionalities and technical issues.
These developers would require different sets of tests in order to assess their skills, so be sure to specify which one you need. For instance, if you hire a back-end developer, you should check their ratiocination, how they solve logical problems. Giving riddles may be a good test for them. However, when you deal with hiring a front-end developer, this test will not be suitable. A better idea would be to ask them to design some simple program with the use of HTML and CSS.
Narrow down your search for the right developer by weeding out the applications that do not fit your specific development needs and goals. If you know what skill sets and professional attributes you need before the start of the hiring process, your search will be easier. It will not only let you spend more time interviewing better candidates but may also let you save a few dollars, as the recruitment is costly and time-consuming.
As they say about birds of the same feather, top-notch web engineers and developers also often flock together. This line of work benefits from sharing ideas and updates among each other, which is why it is common for these IT professionals to be in the same groups, forums, and circles. In order to help make your search easier, here are a few good places to start looking for the next member of your development team:
The most important qualification for web developer applicants is their technical knowledge and experience. Do they fit the technical requirements needed? What kind of projects have they previously worked on? Check their work experiences and ask for client feedback to get an idea of their work style and efficiency. Ask a trusted IT recruitment consultant for help with the tests and technical interview.
You can also check how DevsData does its multi-stage hiring process and the qualifications they consider for their hires to have an idea of what else you need to include in your recruitment.
When you finally schedule an interview with your aspiring web developer, you have to be mindful of how they respond or act as this is a crucial leg of your hiring process. Of course, you should expect some candidates to stumble in answering some questions because of their nervousness, but if their stumbles are one too many, it should raise a red flag. Here are some other turn-offs to look out for:
While many applicants would try to wow you with their credentials on paper, also factor in the results of interviews and assessments. If the web developer cannot answer technical questions or create clean and secure codes, then it would pose a great problem for your projects once they get hired. Communication, problem-solving, and critical-thinking skills are as important as the applicant’s technical skills, so you need to look out for these as well.
When hiring for the web development team, it is important to test their knowledge of web security. Choosing a proper backend framework is essential as they are often responsible for the security of a website. A candidate should be able to understand the risks that every website is exposed to.
Taking SQL Injection as an example, it is vital to know how it works and how to defend against it. This type of attack places malicious code in SQL statements, through web page input. This code injection technique is one of the most common ways to hack a website and can destroy (and give access to user information in) your database.
To prevent it, a skilled web developer should remember to implement password hashing (more on this in the next section) or using the ORM programming technique.
As mentioned before, it is very important not to store passwords in plain text in our database. Web developers should know how they can deal with the dangers of not protecting stored information. Backend frameworks often take care of it for us, but it is good to have knowledge of how it is achieved.
A common practice is to use hashing algorithms such as MD5 or SHA-2. These algorithms are One-Way Functions – it means it is easy to compute the output, but it is nearly impossible to reverse the output to get input. Hashing functions are deterministic – for the same input, they will always give the same output.
Besides, to make those algorithms even more secure, modern frameworks, that implement password hashing, add also so-called “salt” to the plain passwords. Salt is a random string appended to the password. It makes the function output totally different. Using salt makes storing our hashed password safer as it is needed to decrypt the password and it can be appended in any place in the string increasing the number of possible hash functions output for the same plain text password.
Of course, there are many other security questions we can ask especially to backend developers. Some of them can be about: SSL encryption, security tokens, forms validation, HTTPS protocol, etc. It is important to choose questions related to the position your company is recruiting for (however, in our opinion, it is imperative for a strong front-end developer to also be well-familiar with the security aspects, otherwise you put your company and a project in danger).
It is almost impossible to list all technologies used in modern development projects, be it for a website, software, or app. As mentioned before, the technology will also depend on the type of IT professional you will be hiring, but here are some of the most popular and essential ones.
A few years ago it was very popular to use JQuery but in today’s world, its popularity is decreasing as modern frameworks are getting more popular. The three most popular ones are React, Angular, and Vue.js. – with React being most widely used and Vue.js the fastest growing in popularity.
While all of them are frameworks, their approaches towards creating an application differ. Angular is the largest one and widely used for big projects, where you need to have a complex toolbox for every situation, without worrying about additional packages. What is more, Angular enforces using TypeScript.
React, on the other hand, is more of a library rather than a full framework. Its job is to create view components, rather than a full application. In order to create a full solution, a developer needs to use external libraries (there are plenty of them as they are very popular). It is worth mentioning that the React community is the biggest one. It also has an additional asset, React Native, which is used for creating native mobile applications.
Finally, Vue.js is a sort of mixture of Angular and React. Vue is a framework like Angular, but focuses on creating components, like React. While Angular is a complex toolbox, React a package of modules, Vue is like a modular toolbox. From these three frameworks, Vue is the easiest one, Angular has the steepest learning curve, and React is somewhere between them.
While searching for a job we can also observe that many companies are not using JS frameworks and instead they are using Bootstrap – CSS Framework or SASS – CSS preprocessor alongside JQuery and its plugins – although its popularity started to drop lately.
For the back-end, there is much more to consider when hiring software engineers. First of all, knowledge of programming is probably more important than knowledge of a framework using it – so finding experts in this field should be the main focus.
For each language there are many frameworks you can use, some of them are Django and Flask for Python, Ruby on Rails for Ruby, Express for Node.js, ASP.NET, and its multi-platform version ASP.NET Core for C#. Almost every website is using databases, so for every developer, it is important to be able to administer some database systems and know SQL. However, it is also very popular to use ORMs (Object-Relational Mapper) which maps Object fields to columns in Table and composes SQL for the programmer who interacts with databases like with an object.
Typically a person on the full-stack position should know back-end language and framework alongside front-end skills, and many companies consider them more valuable because of the versatility of their skills. All developers should have good knowledge of some version control system – preferably GIT as it is the most popular but worth mentioning are also SVN and Perforce. Very important are also HTTP request methods and web security, which are described below.
These are the fundamentals of web development. Every data exchange between client and server is using the HTTP requests methods underhood. The most commonly used ones are connected with CRUD – basic operations on database applications. Typically we can match these SQL methods: INSERT, SELECT, UPDATE, DELETE with corresponding HTTP methods: POST, GET, PUT, DELETE.
Of course, there are many more methods, but they are not used as often as ones mentioned before, and those four methods are fundamental and obligatory to know for every web developer on all levels of advancement.Data sent and received by HTTP requests are mainly in HTML and XML, but JSON is also a very popular format.
Hiring web developers is not a fast and easy task. Like every other thing, if you want to find something of high quality, you need to carefully check and assess (see how we do it at DevsData). It would be a waste to hire someone who cannot keep up with the demands of your clients just because you are rushing to hire one. At the end of the day, who you need is a programmer who would be an additional asset to your web development team, instead of a disruption to your project’s success.
This article is also available in German – web entwickler.
Fill in an enquiry form and we’ll get back to you as soon as possible.
We'll get back to you as soon as possible.