A Study of the Impact of a Cover Letter on an Interview Invitation. Or How I Made 1,000 Job Applications

One day I needed to start looking for a job and suddenly remembered that I thought to check one statement from HR in different articles: “Write cover letters”. Whether it is necessary to write them or not, I decided to check, combining the useful with the useful at once.

Initially, I planned to conduct a full-fledged study with the following plan: create several resumes, very similar in experience, but still very different, then respond to the same vacancies with these two resumes, but send a cover letter with one of them, and not with the other. I abandoned this idea, due to the cost of the result. It was important for me to answer first of all for myself to the question: is there any benefit from a cover letter or not. For this, my resume alone is enough. In this article, I will show you the analytics that I managed to collect and the results of my research, and I will also tell you a few personal interesting stories about my interview experience.

Several inputs at once:

  • this article is more statistical or analytical (with stories about interview experiences) than technical (I originally planned to write about the technical part, but it would require a whole separate article)

  • the study was conducted in the Backend field for vacancies at levels from Middle to Teamlead and for the languages ​​Python, PHP, but is suitable for all specialists to review

I'll touch on the technical part a little, how the process was carried out:

  • initially collected all vacancies on one well-known site for those programming languages ​​in which I have extensive development experience (Python, PHP)

  • then I filtered them by excluding intern and junior positions, and additionally excluded vacancies related to other programming languages ​​(for some reason the site really likes to slip vacancies into the results for other languages, I think this is advertising)

    For Python: 2549 total vacancies, 2440 excluding internships, 1318 with filter (junior,qa,java,intern,c,go), of which 306 with Django and 324 FastAPI.

    For PHP: 1302 total vacancies, 1237 excluding internships, 743 with filter (junior, intern, bitrix, 1c, golang).

  • got links to all vacancies and via API pulled out all the data about the vacancy available from the pages of these vacancies, transferred everything to the SQLite DB and cleared it of vacancies more accurately, since some vacancies still contained other programming languages ​​in the responsibilities or, for example, implying embedded development, and also cleared out vacancies with a salary below 100k rubles. As a result, after cleaning, there remained 1069 vacancies. There were similar vacancies from the same companies

  • then I put tags on the vacancies dividing them into Python and PHP, randomly divided the vacancies in these two groups in half and in each of the halves for different languages ​​I generated cover letters in YandexGPT, using in the prompt a description of my skills, work experience (in a relatively detailed form for each place of work) with additional instructions, such as: “write a cover letter for the vacancy (job description), using my work experience.” I spent about 123 rublesit's about 607567 tokens. Requests issued 534 for vacancies

  • I did a small check of the cover letters, or rather their quality, and overall I was satisfied, each letter that I checked was written for the vacancy. Often very the model captured the nuancesfor example: in one vacancy there was a question written like this, “if you freelanced and worked at the same time, did you do it to the detriment of your main job?”, LLM wrote something like this “I have not freelanced in parallel with my main job before”. But there were also incidents, if the vacancy wrote about the “goodies” of IT accreditation, the model's answer was like this: “Unfortunately, I can't say anything about this. Let's change the topic?”

  • then automated responses to vacancies began and I first learned about the limit of 200 responses per day on the site

  • after the responses I pulled out the information that the site provides, of course, for money, from the vacancy statistics, which I will publish in this article

Results

A little terminology:

  • Viewed – those responses to vacancies that were viewed but not responded to. All responses are about 2 weeks old. Therefore, I consider it a refusal

  • Not viewed – those responses that weren't even considered

  • Refusal – those responses after which a refusal came

  • Fake invitation – those responses that have the invitation status, but in fact the invitation says “your candidacy will be considered and a response will be given”, this is what large companies do, collecting data on the market. After most of these responses, refusals follow. Therefore, I consider a refusal

  • Invitation (other) – those responses that have the invitation status, but I consider such invitations to be a refusal, for reasons such as:

    • test tasks from the start, even without initial communication (and quite often such tasks take more than 12 hours of work)

    • passing tests all sorts for 10-30 minutes

    • mandatory cover letters for a salary of 100k-150k rubles

    • forms per hour with a salary of 150k

    • invited but no response

    • extra stepslike filling out a “brief” with information that is already in your resume or cover letter

    • hackathon invitations and I'm not joking

    • invitations to interviews in the officethis is, in general, complete trash at such a time. When there can be 5-10 interviews a day, spending any time going to the office for an interview, no one in their right mind would do that

    • filling out the questionnaire (and very often asked to fill out on left sites) with questions when sending a cover letter

The results are a bit depressing for all vacancies. conversion to initial interview near 4.8%, at the same time, there are vacancies in Python 5.6%and for PHP vacancies 4.2%.

Experience and observations

There are really, really, really many auto-rejections configured.this is especially true on weekends.

There was also a vacancy for which impossible to respond It was. You press a button and nothing happens, it's fun, of course.

There are interviews that trying to record (sometimes even without any warning, which is prohibited). I automatically refuse to record such people.

They often ask to turn on the webcam. I refuse such people, especially when interviews can now be recorded and uploaded to video platforms. I don't see the point, this is my opinion, if they are afraid that other people are being interviewed, frankly speaking, a webcam won't help, it is already possible to train neural networks to visualize a person and it will be practically unnoticeable (in real time), I'm not even talking about the voice.

There were cases when they wrote in messengers or directly on the website, not even indicating my namefor example, Ashot, Maxim. Of course, HR, even, don't bother checkingwhat and to whom they copied and wrote, but at the same time in many articles they say to write cover letters.

There were also those who didn't come for a call.

We have met HRs who call each other exclusively in one application, there is no choicewhere to call, although creating the same link in GoogleMeet is a matter of minutes (I often even do it myself).

They simply set a date and time to come and didn't ask methen, 2 hours later they rescheduled it and again didn’t ask my opinion, this is, in general, funny.

And this: first they asked me to send my resume in pdf (when I sent a link where I could download it not only in this format). Then they were late for the interview, I kept quiet. Then they also insisted on turning on the camera without going to the meeting, when I said that I can’t turn on the camera. I go to meet them, but they don’t. Too many demands.

Job vacancy statistics

Salaries

But it is worth noting: Most Python job postings don't list salary. PHP is a bit different, with about 50% listing salary.

Job posting response statistics

Age

There is also a category 60+, which I didn’t show, there is very little data, but they exist.

I ended up simplifying it:

It is interesting that there are no responses to PHP vacancies under 18. In general, it can be said that older people go to PHP.

Education

There are also doctors of science, but there are few of them, and what is most interesting is that they predominate in the direction of PHP.

I ended up simplifying it:

In general, it is clear how the presence of higher education prevails. But the quality and specialty are unknown. This explains the presence of such a percentage of responses from scientists in the direction of Python, this language is mainly used in the fields of science.

Experience

Overall, nothing special, except that quite a large number of people without work experience respond to vacancies above Middle.

I ended up simplifying it:

Genders

There are more girls in PHP, surprisingly. I didn't find the gender “Apache helicopter”. Overall, the picture is nothing special; everyone knows about the gender imbalance.

Salaries

I deleted the salaries of Python jokers of several million rubles. The maximum was 4,760,000 rubles.

Number of responses

Answer to the question about cover letters

No.

As you can see, there is not much difference.

The most trashy interview

When HR forgot to turn off the sound during the interview and watched movies while her colleague was conducting a technical interview. This is a personal experience.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *