In this article I would like to share my notes related to the employment of programmers in the office.

I have a web studio in Moscow, subordinate to more than 70 people. Experience since 2001. We started with ordinary websites: a friend did the design, and I programmed at night. For all the time has come a long way from simple business cards to complex integration solutions.
Immediately, I note that I will not talk about the choice of freelancers. Today we will only talk about it-frames
to the office .
')
So let's get started:
1. The organization of the flow of candidates
We publish a vacancy on recruiting sites: HH, rabota, job, hantim + profile forums.
Year after year, the most intelligent guys come from HH, but here is the question of luck and the specifics of the language in which you are looking for a programmer. We mainly write on Yii or on nodejs, so many people come to us for an internship via the forum. Here is an example of publication. Please note that the post is designed to attract more attention:

You can have your own search channels for candidates for open positions.
Do not make your job template. Try to add more precise points to it to interest the candidate. If you are ready to take a team of not very experienced specialist, then put in a separate item "What will be a plus" and be sure to specify "If you can not, then we will teach ..."
2. Analysis and analysis of the summary
Tried everything, even outsourcing recruitment agencies.
They came to the conclusion that all agencies are fooled and sometimes “miss” very valuable personnel or drive slag. The only advantage of recruitment agencies is the presence of a large base of candidates, in which, as a rule, there are not only those who are looking for work at the moment, but also those who were once looking for work in this industry.
They came to the conclusion that recruitment agencies can only perform systematic work. They were replaced by an assistant for 10,000–15,000 rubles, who polls in detail the candidates and selects those who are most likely to fit our company. If you do the same, I recommend that you describe in detail all the steps in steps (do not wait for an employee for 15 tr. Supernavings).
More professional and expensive option - your HR. Although we have not grown to him, and we do not have such a flow of personnel. The turnover is not large 3-5%.
Now the selection of a specialist is as follows:
- We visually evaluate the candidate’s resume, who he worked for and what he did.
- Call up or write off with the candidate. We ask him personal questions to assess his qualifications. As a rule, the survey takes place in the form of an ordinary dialogue. For each specialist we have our own list of questions. Here is an example of a short questionnaire for selecting a developer yii:

We additionally ask “Like / Dislike” and “I am able / Not able” in addition to some specialists in the company in order not only to understand what he can, but also what he likes (an example of a survey of project managers):

- Call up or write off with the candidate. Welcome to the office.
- We choose the market leader, but not the "star".
There are very funny specimens. Here are indirect signs from the summary:


Fools better not to pay attention.
From my own experience I will say that if you are a beginner studio, then it is better to take 2 programmers at once. Alone, the programmer will work poorly, or will quickly leave the team.
It's like in advertising: you get 3 for the price of 2. There is the same logic. Productivity of two will be many times more than one.
It is not affordable for everyone. You can try to take 1 freelancer and 1 developer to the office. This tandem is also suitable.
3. Offer (official offer)
Before the release of the candidate, we are preparing a formal offer (offer).
Below is an example of what the offer consists of and the nuances of its compilation.
In my opinion, the market of IT-specialists is poorly developed and at the moment there are many employees who do not possess the necessary skills. Therefore, we invite almost all candidates to work on probation. If they have not shown a desire to study, then this gives us every right to part after a probationary period.
Below is an example of the structure of the letter, which is useful to you for drawing up an offer with a probation period.
If without a trial period, the example will be different.Content of the offer
| Recommendations for registration
|
Good afternoon {Name of employee}! We are sending you a formal job offer to LLC "{The name of the company where the employee arranges}".
| Be sure to include the full name of the organization. This will add official offer to your offer.
|
As a result of the test task / interview, we found out that you have knowledge gaps, the requirements for which we make to the employees for the Yii developer position.
In particular, it seemed to us that you have little experience in the following areas: {indicate gaps in knowledge} , which we consider important for this vacancy.
| Each employee has gaps in knowledge. It is important to show right away that the candidate understands that there is something to strive for.
In this section, it is necessary to describe with 1-2 sentences the most important gap of the employee, on the basis of which we can refuse to employ him.
Also, this item should define a clear vector of employee development. It is not enough to write: “you don’t know php well” or “you don’t have experience working with git”. This item should describe a more global problem. For example, poor layout skills or no experience with Yii2, and with Yii 1 - there is ...
|
We very much hope that in the range of 1-3 months (from our experience) you will complete knowledge gap and join our team.
In turn, we pledge to share our experience with you and contribute to your development.
| The interval of the probationary period (internship) is indicated based on the amount of knowledge.
|
We offer you a job with a trial period. The faster you master the necessary skills, the shorter the trial period will be (but not more than 3 months). We would like to have a specialist who has the following skills:
Perfectly possession of Yii2 and OOP on php (do not indicate, since nobody owns perfect)- Full thinking over the architecture of new projects, including the database
- Solid skills in front-end - layout and JS
- Careful adherence to TK
- Debugged git / git command interaction
- ...
For all the above points we will move consistently:
- perform small tasks
- study materials
- interact with more experienced developers,
- learn to draw conclusions.
| In these paragraphs, tasks that are required from an employee are described more discretely. If the list is large, the file is attached and this is reported in the letter.
In the skills must be described not only the tasks that the employee must perform, but also gaps in his knowledge.
|
Terms of cooperation: During the trial period, your salary will be: XX 000 rubles / month.
Payment of wages is made 2 times a month: advance / salary.
Schedule: 5/2, full-time. The working day can be started at a convenient time for you, but not earlier than 9:00 and not later than 11:00.
During the trial period, you will spend 80% of the time on tasks related to current tasks, and 20% on your own development or tasks on acquiring knowledge (reading articles, watching videos, honing skills, attending seminars / webinars, etc.). After the trial period, we will summarize and discuss the new conditions (more favorable) to continue cooperation.
| The phrase “After the trial period, we will summarize and discuss the new conditions (more favorable) to continue cooperation” is indicated only if the candidate is invited to a wage level lower than he expected.
|
Please reply to this offer within 2 business days after receiving it.
| The term is specified no more than 3 days. This is due to the fact that if the employee refuses, then you need to have time to find another.
|
Please note that in the proposal the candidate should not be misled. This letter is an official offer and you must comply with the agreement.
The main task of making an offer is to show gaps in the employee’s knowledge and development vector.
Remember that employees basically come to the company for three reasons:
- You offer favorable conditions
- Your company is a big brand and an employee appreciates more than salary (an example of Google employment, etc.)
- The employee sees where to develop and feels that when finding a job he will be given the necessary knowledge that he cannot get elsewhere.
4. Start working immediately and at the same time slowly
On the first day of work, pay due attention to the employee. He should not sit idle and attention. When a person got a job, he wants to show himself and comes to work with the aim of “getting into projects”.
At the same time, keep a balance: do not immediately demand a finished product from it. Ideally, he should feel caring and team.
On the first day, an employee reads the regulations, sets up a computer, watches a library of solutions, walks through the territory and communicates with colleagues.
The task of such a smooth entrance is not to frighten the developer (not to overload him with information) and so that he can become more thoughtful about the materials.
At the end of the day, summarize, ask what the newcomer likes / dislikes. Think over the work plan for tomorrow.
This attention will create a team member, not a means for programming.
Questions throw in the comments. Glad if was helpful. Good luck to everyone in business!