About interviews

    On duty, you sometimes have to interview people for various open vacancies in my department.
    Mostly for web programmer vacancies.

    In the application for recruitment in the requirements, I usually indicate very simple things:
    - Good knowledge of SQL (MySQL, to be precise).
    - Knowledge of Perl or PHP (with the desire to switch to Perl).
    - Basic knowledge of everything else that may be useful to the developer - at least distinguish HTML from CSS, Java from JavaScript and a web server from a browser.

    Why is it so simple? Everything is trite - as a rule, I do not need a guru.
    The projects that my department is working on are not so complicated as to not manage a person with 2-3 years of experience in active web development. All the difficulties that you will encounter in the first months of work can be completely resolved either by me or by system administrators.

    After the application is filled out, approved by the head of the department and the general director, the human resources department starts searching for a suitable person.

    Usually, for an interview, I invite the owners of two out of every five resumes that have selected eychars.
    How are the others screened out?
    The chances of not getting an interview are usually higher for those who
    a) are still studying at the university
    b) have too much or too little experience.

    Why aren't the students happy with me?
    The reason is simple - I need a person in the office for a full time.
    Combining work and study under this condition is quite difficult.
    I know this from my own experience.

    Why don't I need people with too much experience?
    Firstly, as I wrote above, the projects are simple and will simply be boring to an experienced developer.
    Secondly, our team is young and it is unlikely that 35+ people will feel good in it.
    Thirdly, experienced programmers want more money.

    Of course, there are exceptions in the first and second cases.
    I invite some of them - there are people in the department who are several years older than other employees of the department.
    Nothing, work.

    What else in the resume I do not really like.
    These are basically three things.

    Firstly, sometimes they send a resume in English.
    Colleagues, we work in Russia, write a resume in Russian, unless you are specifically asked to send the English version. No, of course, I read in English, but see above - we are in Russia.

    Secondly, sometimes they list skills that are of little interest to me for a particular vacancy.
    For example, they indicate that for several years he administered FreeBSD or promoted sites. This, of course, is great, but I don’t need a system administrator. And not a seoshnik. If this is a resume of a web programmer, then write about web programming. And you can mention all the rest in additional skills.

    Thirdly, sometimes they write a lot of smart words a la “I know TCP / IP, HTTP, SMTP”, “I am well versed in configuring Apache” or “I attended Oracle courses”. Do you know smart words? Be prepared that I will definitely ask about this subject that you do not know. What are the differences between HTTP1.0 and HTTP1.1? How to use mod_rewrite to prevent all users from taking files from a specific folder, allowing only one and not using passwords? What is the difference between using PGA in shared and dedicated server mode? Do not know? Well, there’s nothing to write scary words in the resume. I'm afraid of them, yes.

    But here the right people are invited, an appointment is scheduled, the person has come.
    What's next?

    Usually, one of our personnel officers first communicates with a person.
    If they are happy with everything, they invite me.

    All interviews with me are usually built in this way.
    First, I am interested in what tasks a person has been able to solve; I ask something from the subject area of ​​these tasks. As a rule, these are theoretical questions - for example, something about asynchronous data processing, about the device of some DBMS nodes that a person worked with, about OOP and so on. Not complicated. Exclusively, to see how deeply a person was digging or how he knows how to reason. I can give simple tasks on quick wits for the same purpose. Both related to web development, and not related.

    Then I begin to ask more specific things.
    Usually, this is work with regular expressions, the basic syntax of the language, SQL.
    Oddly enough, already on RV and BS, the impression is beginning to appear that the web developer has somehow shredded. The problems of the first-year level of the institute either do not solve at all, or they solve incorrectly, or they use too complicated methods of solution where this is not required.

    The task is to write a regular expression that checks the IP address (IPv4) in the form in which it is used to seeing for correctness. Even simpler - just one octet.

    Most of those who have had an interview write the first solution:
    \ d + \.
    Naturally, I am writing IP, which is considered correct by the regular season.
    For example, 999.999.999.999
    which is just not correct.
    And the process begins in a new way.
    They decide. Not always.

    SQL is even worse.
    Usually I ask what projects a person uses on the Internet regularly and then I give a task, the meaning of which is to write one or two queries that implement one or another functional of these projects. The tasks are very simple, but nobody wrote perfect solutions the first time. Or they don’t write at all, or they write something that can easily put a database server. It’s good if they understand that this request is bad. For example, it’s rare, who can throw a query that finds the first missing number in a sequence of natural numbers (a hole in auto-increment, for example).

    I have a difficult SQL task, but I only know four people who could solve it.
    All of them once worked in our company or continue to work in it.
    I have never given this task to anyone during an interview. Do not decide.
    It would be strange if they could solve it, failing to show me the solution to simpler problems.

    If after all the steps a person suits me, I suggest that he ask questions about the upcoming work, answer and if everything suits both him and me, I set the time for the next meeting.

    It would seem that everything is simple. But really, out of the dozens of people who caught my eye, I took a few units so far. The rest, unfortunately, do not pull.

    But the lousiest thing is that with all this, the salary expectations of the majority very much do not correspond to the skills that the applicants show during the conversation. People who cannot write the simplest queries and at the same time claim to 60-70 thousand rubles, greatly surprise me. 70 thousand is a quite normal salary for a normal web developer in Moscow. Not for those who usually come to me and do not pass an interview.

    Have a conscience, colleagues, evaluate yourself adequately. Yes, even if you don’t get to me, you’ll probably find such a salary somewhere. But I will be truly sorry for your future employers. Is everyone really interested only in money, and not what they have to do and what experience can be gained by working on projects in which all the salt is their big attendance?

    For those who want to know this very task.

    I sent the conditions to the first five people from those who were noted in a topic already a heap of the people.
    Write in a personal, if interested. I will answer the letters that come in PM, but maybe not right away - after all, the working day is in full swing. True, while I saw only one answer, which at least remotely looked like a solution.

    And further. Comrades who are actively minus karma, it is violet to me, of course, but I simply will not be able to answer your comments if you zaminuset it completely. :)

    upd ++
    Thanks for the interesting thoughts. I will try to take into account some of them.
    Generally speaking, I did not expect such a resonance from the usual description of the interview process. :)

    Also popular now: