How to hire a programmer with eyes closed

    Finding a good programmer is a big problem. In our lifetime, we hired about 50 programmers based on interviews and only interviews. A rare case was a success. Problems started from where you were not expecting them.

    • One did not wash and stink so that one cannot enter the room. I threatened to extract the hood and deduct from the salary; it helped for one shower, no more.
    • Another drank heavily and lied that he had been poisoned by salmon belly.
    • And that’s almost all delayed the time.

    Each of those we hired seemed like a great professional. And only work experience showed how wrong the first impression was. Like a marriage: it’s worth living together, as you know, what exactly infuriates you.

    Search for candidates

    I found another programmer like this: I selected several responses to and asked them to see what they would do. Here is what I wrote:

    Thanks for taking the time. Here I will describe the first task that you will encounter. The objectives of this text are as follows.

    • For you to understand whether you are interested in doing the following.
    • For me to understand how much you understand the task formulated by me and how much time you plan to spend on it. The results of the trial period largely depend on how much you meet this deadline.

    What is needed from you.
    Teamwork is, first of all, communication. We want to test our communication. Please briefly outline the task in your own words so that I know that you understand me correctly.

    So that it doesn’t work out like in the picture, try to formulate questions on implementation in the format of decisions: “This I understand so and so. Otherwise, if it’s all the same, it will take another two days. ” Or: "Nothing is said about it, but I would have done so-and-so."

    Prepare an estimate for the deadlines and break into stages no more than three days each.

    All this came via email at ivan [at] .
    Many thanks!


    I got three good answers. I informed all three that they were taken for a probationary period; their work is now paid. I prepared a very good task and distributed the same thing to all three. I told them that their task is to complete the task as cheaply as possible , while the price consists of:

    • Programmer salaries
    • My time that I spend on correspondence (based on $ 100 per hour)
    • The time of the contractors hired by the programmer - I pay for their services at the rates that you name.

    For each, I started projects in BaseCamp - a system for managing small projects. In the future, I deleted two projects, and one is still in use. This is what Sergey’s system looks like after months of work.

    BaseCamp Sergey

    VisualPharm BaseCamp 1
      VisualPharm BaseCamp 2
    VisualPharm BaseCamp 3
    Work timeline          Job Lists - What We
    Use The Most
    We use messages
    when you need to
    tell something or


    All programmers agreed and started work. I was required to discipline to take into account every minute spent on the programmer. I installed the MiniBooks timing program on the iPhone , which allows you to work with several timers at the same time, and always, before starting to read a letter from a programmer, a timer starts, even if the letter is monosyllabic and the answer took 40 seconds.

    In short, the results are as follows:

    • Ivan spent three days and did nothing, having received a calculation of $ 290
    • Irina is gone
    • Sergey exceeded all expectations and passed the probationary period.

    Here are my timers: Ivan's timer has already been deleted: they have already settled and bowed.

    Timers in MiniBooks

    Ivan: $ 1454.55 $ 30 work

    He brought me the brain at the stage before the trial period. The culmination was the question “who pays for a bank transfer?” With the issue price of 12 rubles, I realized that we were going in the wrong direction. I decided to do the layout myself and for the last three days we had a layout, whose readiness I rate at 20%. I wrote him the following sad letter:

    Unfortunately, on this we will have to stop our cooperation. There is nothing personal about it; please try to perceive this decision as one hundred percent business situation, as our attempt to calculate money. Money is not counted by those who are not going to pay, but we pay and we are obliged to count it.

    Our results are such that we spent 290.91 dollars on your salary, you spent 0.3 hours of my time (another 30 dollars), a total of 320 dollars, and for this money you received, let's say, a little. At the same time, I am aware that the layout is not your profile, but you could give the layout to someone else, and for 300 dollars you would get a completely made-up site, where you could only fasten the functionality.

    For comparison, your colleague made up everything on the first day and finishes screwing up the search functionality. Also, we received an estimate of 20,000 rubles for the entire naoplatu dressing project, even from a very expensive programmer with a salary of $ 5,000, for which our project is a part-time job for the weekend. I’m not saying that they are better, but they are more suitable for us for our tasks.

    In any case, if you treated the situation in an adult and understanding manner, we would like to behave just as noble and pay you the money that should: $ 290.91. Please provide bank account details or Yandex.Money; other systems are possible, maybe just give us time in that case.

    $ 290.91 is a huge amount for such a job. If we completed the remaining 80% at the same pace, we would have spent $ 1,454.55 excluding my time or $ 1,600 with mine. For comparison: the layout of one page costs freelancers 20-30 dollars.

    $ 290.91 + 12 rubles for the transfer - these were all my recruiting expenses paid in cash, not time. Recruiters would ask for three salaries - more than an order of magnitude.

    Irina: how to suspend a project for 22 days

    Irina was initially laconic, she simply nodded: I will do everything. She showed excellent recommendations. She didn’t want to continue freelance; our company (then  VisualPharm , now  Icons8 ) was seen as an opportunity to get rid of freelance and get a stable job. A prospect loomed to get an employee who silently does his job without distracting me over trifles.

    Then Irina disappeared. I contacted her, and she said that she couldn’t turn in her freelance tails on time and asked for a deadline to sort it out. And then she disappeared again.

    From the moment when I started looking for a programmer until the moment when I stopped waiting for Irina, 22 days passed. If I considered only her candidacy, we would have suspended the project for 22 days.

    Sergey: everything was started for him

    Three days later, I wrote to Sergey the following message:

    Delight! Sergey, cool!

    Please test the functionality yourself (so that everything is clicked and works, including search), after that we will start testing ourselves.

    Sergey spent 8 minutes 51 seconds of my time in three days, but he did more than was described in the assignment. He still works with us.

    So I hired a programmer with my eyes closed, like Themis. I did not know anything about him. Even the city found out only when he sent me the bank details for the transfer of the first salary.


    Parsing the correspondence of that time, I came across a letter from a companion:

    Sergey is a little embarrassing, too direct. The rest are interesting.

    Now it’s hard to understand what he had under “directness,” but one thing is clear: based on subjective feelings, the best programmer would drop out first. But this is exactly how most companies recruit! Most not to say everything but a few. I hope you are with us.

    Also popular now: