Knowing about my experience as an IT department managing software systems development and support, my friends often ask how to determine the qualification of the developer, how to understand that the person who comes to the interview will be a good programmer. Personnel issue in the field of information technology is now relevant. The success of the project depends on the staff.
So, I decided to systematize my thoughts on this in the article.
Do you need a new web developer?
Do not expect that your new employee will be responsible for all tasks related to information technology. There has already been a strong specialization in this industry. A good programmer may not be a tolerable system administrator or IT manager, a system administrator may not be able to create a program, at least on an industrial scale.
The term ‘computer technician’ is popular with non-specialists, but in fact it does not make sense anymore. There are no more programmers. A person who says that he knows everything, can not really do anything well.
Industry needs web developers.
If you want to hire a web developer to solve your production problems, then you need an industrial programmer, that is, a person who is not only able to create a program, but who is able to solve the tasks assigned by the established deadline.
There are a lot of people in the market who know a couple of programming languages; that have written several simple programs in their lives, but they are not organized at all, they are not able to work systematically.
My approach is that a person before hiring needs to be tested on a practical task that is not very complicated, but requires a normal planning and solution within a few days. I usually offer a person a task that he could solve in his spare time, without quitting his old job.
At the same time, I agree to communicate with the applicant for this task during non-working hours, when it is convenient for him. This is a bit burdensome, but it pays off afterwards with a lack of management problems with the new person. People usually agree, as they too are interested before dismissal to understand whether they will be able to work with a new leader in the new conditions.
For this testing, you must set a task. The applicant for a couple of days should think it over and draw up a work plan. In terms of it, it must break it down into stages, determine the time frames for these stages and the results of the stages must be verified.
When a person says that he will do the task for such amount of time, without phased planning, this is a good sign.
Even in small tasks such an approach is suitable, since you, as a leader, can, in this case, control the progress of work and be responsible for the entire project as a whole, you can correct the work of the subordinate
I also try not to impose time limits in production work. “Here is the task, name the time, but then be kind enough to meet this deadline.” – I say.
Now we will check that our applicant is able to fulfill his own plan. To do this, after each stage in the agreed time, he must show the planned results of his work. If he succeeded, immediately hire him. My experience shows that 50% of applicants are lost when it is necessary to show the results of the first stage, another 50% of the remaining – when it’s time to take the second stage.
Ability to break work into stages, plan and execute a plan just distinguishes a web developer from a web developer
Knowledge of programming languages and application systems,
The guys from Comalytics.co.za told us that in their opinion, this factor, except for cases when the system or the programming language is very specific, does not play a special role I have worked in my life more than 20 programming languages. It takes me about a week to learn a new language, a new code, a new development environment, colleague. So the value of this factor should not be exaggerated. If a person has properly built skills, has programming skills in similar languages and is motivated, he will quickly learn a new one.
Here it is only necessary to note that programming languages are divided into several groups. Without going into details, there are high-level algorithmic languages, hardware languages and query languages. The logic of programming is different. You can expect that a person will quickly learn a new language if he is familiar with another language from the same group. But if he wrote a lot in C ++, but did not work with databases and does not know the languages of queries, mastering SQL can cause problems.
Finding a good website developer or applications today is not so easy. Especially if you do not know what specific skills and experience he must possess.
You can have a lot of good ideas for your business, without having the technical skills to implement them. So, when you hire a freelancer, a web studio or a full-time specialist – you must go through the candidate’s portfolio of development portfolio, paying special attention.
Track your first impression of the works presented in the candidate’s portfolio. Try to put yourself in the place of customers . Do you like these works?
Pay attention not only to design, but also to the quality of layout, meta tags and other important details. Well, if the portfolio already has a site that coincides in many criteria with your tasks, you can hire this web developer.
So it will be easier for you to guess whether you will be satisfied with the result of the developer’s work.
Web sites should quickly boot, because a modern user will not wait long until your page opens. If the page does not appear in front of him in this very second, it will just go to another site. According to Kissmetrics, sites that load 4 or more seconds, can lose 25% of visitors. That is, in the case of a lengthy download, one in four visitors will leave, never waiting for the page to open.
Therefore, I recommend checking the speed of a couple of sites from your potential web developer’s portfolio. The easiest way to do this is with Google PageSpeed Insights.
Enter the URL of the site on the PageSpeed Insights page and check its speed.
PageSpeed Insights will show the speed of the website on the desktop and mobile device. This indicator is like an assessment in a certificate. 85 out of 100 – solid four. Anything below 60 is a deuce. The PageSpeed Insights report will also provide several recommendations for improving download time.
If the pages from the web developer portfolio is loading slowly, you may need to look for another candidate. But before you talk to him about the download speed, because not every aspect of the speed of the page is under the control of the developer. For example, a client could strictly specify the platform or provider, which affected performance.
Test sites from the potential web developer’s portfolio for functionality. Fill out the forms or make a purchase. It is important to understand that on a commercial site even the smallest punctures in functionality can prevent sales. You, in fact, you need a good developer who can make an intuitive, easy-to-use website with rich features and capabilities.
On these indicators it is necessary to focus attention:
– Search the site;
– Sorting and filtering of goods;
– Adding items to the cart;
– Process of registration of the order.
Creation of a really high-quality site assumes its availability for all categories of users, regardless of the physical capabilities of their gadgets and computers.
Therefore, test the sites in your web developer candidate’s portfolio for compliance with general web accessibility guidelines. Simply enter the URL of the page – WAVE (Web Accessibility Evaluation Tool) generates a report with possible problems with availability.
Not everything that the WAVE report produces is in fact an availability problem, but it is still a good tool for identifying potential errors and finding good web developer coding skills.
Clean code is a fairly subjective thing, but in any case, it can be defined as code that is easy to read and modify. Clean code is important because it allows you to quickly make changes to your site. Imagine, for example, that your freelance web developer suddenly moves to a permanent job, and you need to hire someone new to work with your site. If the code is clean, it will be much easier for a new person to quickly figure it out.
Unfortunately, most of the page code can be hidden from you. Often this is the base code written in PHP, Ruby, etc. It is important that everything here is clean. For example, you can use the HTML validator from the World Wide Web Consortium (W3C). This tool will give you a list of warnings and errors in the HTML site.
The HTML validator from W3C will show possible HTML errors.
Almost every site that you will test in this way will have errors and warnings, but in this case it’s important that your web developer candidate can explain you his errors.
Despite the fact that the definition of a bad web developer has changed in recent years, you always easily recognize a good web developer
The profession of a web developer is no less complex and responsible than other professions in the field of programming. After all, such an expert should know not only the theory of his work, but also he must be an excellent practitioner. To date, the demand for universal web developers is one of the highest among other professions.
Find a good web developer is not easy, but many people today prefer to enter into contracts with them.
However, to be successful in web coding, a web developer must be disciplined, committed and talented at the same time.
But if the web developer is person which you personally know?
For me there is no difference between acquaintances and strangers. The most important is the actual knowledge and requirements of a particular job. For example, when I worked in an agency, we took a programmer referred from the staff. He had worked with the staff before. I did not have any specific expectations, but in the process a person showed himself to be a good specialist. Even more than I could have expected. On the other hand, one day a very young girl came to my office. No one recommended it, but during the interview she showed herself that she is a good web developer.
Bad examples are everywhere, but more often such candidates are eliminated at the interview stage or test task. Often there are candidates with a huge number of languages and platforms listed in the summary, but with a small amount (and quality) of completed projects. For Internet business it is very important (and for a start-up – it is vital!) to understand the priorities of the developer. It is necessary to pay attention to people who are fundamentally important to do complete projects; that can work on business indicators and be proud of their results. Often candidates change jobs too often, jumping from a start-up to a start-up.
Simply put, the best way to choose the right web devoper is to spend time communicating with him and exploring his capabilities. Of course, it takes time to make the right choice. Moreover, if you intuitively feel that the specialist does not suit you, it is better to continue the search. In the end, intuition plays an important role in decision-making.