I'm going to have to disagree with the cover letter advice.
I'm sure there are people out there who appreciate well written cover letters. They are a tiny minority. How do I know this? Some years ago I started applying and would always type up a custom cover letter whenever a position allowed me to upload one.
Every time I got a call, I asked them if my cover letter played a role in their choosing to call me. The response was always "Oh you wrote a cover letter? Let me check it out."
Not one person had read it.
Those things take a while to write, and that time is better spent applying to more jobs. I quickly stopped writing them. Sorry, but unless you are getting a job via networking, it really is a numbers game.
If I were sending my resume to someone who I know is not a recruiter/HR, then I do take the time to write one. Otherwise, I don't.
My experience is that small to medium size companies, where the person managing you is also screening resumes, pay much more attention to cover letters. I've had my cover letters explicitly mentioned by these companies when hiring. I've also hired based on cover letters at these companies.
Big companies don't look at all. HR or recruiter finds you by keyword OR you get referred by a friend for the job. Then 5 people who don't care take 20 minutes of their day to interview you. There's no chance for the cover letter to come up in this scenario. When I worked at BigCo I interviewed a decent amount of people and HR never handed me a cover letter to look at.
My rule of thumb is I don't write a cover letter unless I have a good reason to write one. For example, I found a mid size company through an interesting blog post and felt like that was something worth mentioning and that I thought the company seemed interesting too. It was probably as short as a tweet but I got an email and subsequently an offer very soon after. Generic cover letters are a waste of everyone's time.
> The sample cover letter in the article is quite generic
Yes, the first paragraph in the cover letter is almost identical to the opening paragraphs of numerous spam emails. "You're building a great feedback organization product I think has great potential". Really? Well, ta very much; now tell us something we don't know.
While I generally think a cover letter, even if mostly generic, is a good idea as a way of at least somewhat personalizing your application, there's a lot about that one that sort of turns me off. It would be a net negative for me.
Yup, exactly. I'm in central Europe, I've never written one and no-one missed it. If a cover letter was mandatory I didn't apply. Same when I was at the other end of the hiring process, I never required a cover letter, good people are in high demand, so why make them jump through unnecessary hoops.
I think this is correct. Be mindful of how HR is likely to work at the place that hires you.
Big Co: there is some HR screener looking for keywords who hands a stack of resumes -- maybe a hundred -- to a hiring manager who has to quickly go through them and pick maybe 5-10 who will get a screen. If the screen goes well, it may go to a second screen or a full panel.
The thing to keep in mind is that interviewing bears substantial costs for the firm. You are yanking 5-6 senior people out of usually an overloaded sprint to spend an hour and then more time writing up a form, so basically 1 day of work. But you may have 300 people applying. That means if everyone got a full panel, it would take 1 year of labor to fill 1 position.
Obviously that's not possible, so the end result is going to be capricious for the person going through the process -- there's no way around that, as you can only have resources to do an indepth look at 5 out of those 300. So yes, interviewing sucks and you will often get unfairly ruled out for stupid stuff. We get it, but that's how it has to be and will continue to be as long as applying for a job is costless and open to everyone who can upload a pdf. It's just a bad equilibrium -- the more people apply per position, the more arbitrary the process becomes, which encourages more people to apply to many different positions to hedge their bets, which creates more resumes per position, etc.
For really famous firms like Microsoft or Google, they may get 1000-3000 applications per positions. Even if most of these applicants are unsuitable, they still gum up the works and add more randomness to the process.
OTOH, if it's a smaller company you don't get so many applying and they can afford to give a better look per resume, but then again it's going to depend on the job market situation. Still your odds are better.
Strangely, it's rare for the candidate to actually think about what it's like on the other side of this and take steps that make it easier to process their resume.
Stuff like: keep it to a single page, read the requirements in the job posting and include relevant experience/skills rather than a full dump of everything you did, etc. And never, ever, lie about a skill or experience. Try to make the resume easy to read for someone who has to read 100 of them per hour.
As someone on the other side of the table now I’m almost at the point where I’ll bring anyone who provides a single page CV in for interview, just because they’ve clearly put some thought into it. I’m so sick of trawling through five page CVs which contain absolutely everything apart from a reason to hire you.
Maybe there are some cases where a bibliography of publications or something like that would push up the length but I think it's a pretty good rule of thumb that two sides of a sheet of paper--which is still relevant given that people print out resumes and make notes on them--is pretty much a hard upper limit. I'd probably find one page a bit tight though if you have any amount of work history.
I'm fine with 2 pages on a sheet, and have never thrown out a resume because of its length, but for long resumes I just skim. But I disagree that you need 2 pages.
Here is a perfectly fine resume that can be half a page for a lead role or higher. Let's say this is a role for a webapp developer and the candidate has 10 years experience. With this resume, which is only half a page, you are probably way ahead of the competition. This is all the info a hiring manager needs.
Languages: Java, Python, C++, JS
Foo Corp: 2017-2020. Lead Engineer to Principal Engineer. Web App developer for Foo Authentication System and other microservices. Used standard LAMP stack and then Spring Boot.
Bar Corp: 2012-2016. Sr. Engineer to Lead Engineer. Worked on backend order fulfillment logic, developed new test infrastructure for WebApps, client side test harnesses, security test suites, and related work.
Baz Consulting: 2010-2012. Engineer. Worked as consultant for primarily B2B clients, primarily in Java. Delivered over 30 successful projects to spec.
Bat Heavy Industries: 2007-2010. Associate Engineer to Engineer. Started as QA hire and migrated to development, responsible for metrics gathering app, qa infrastructure code, worked in python, java, and other languages.
Education: B.S. Chemistry, Foo State University.
I find it so interesting that you select for that, because that example tells you virtually nothing about the person that isn't generically applicable to a large number of candidates.
Especially those with 13 years experience. Delivering 30 projects is the only item that stood out for me, but everyone with a few years can make that claim depending on what they choose to call a project.
The number of languages listed is laughably small for a 13 year candidate, but I guess they have picked out the ones they think you want to see.
From that resume, I cannot tell even one thing that the person is particularly good at, or any qualities they could bring to the company that would set them apart - other than their decision to write a short resume and avoid telling you much about themselves.
I wonder if you tell prospective candidates this? If you don't, it's just another random element in the application process. How do I know you're the guy who wants a one page CV, or if you're the guy who will reject me because my CV isn't detailed enough?
Unless you can speak to the person in advance, or find out via a third party, you can't know.
There is variation, so it's a numbers game - you have to send out without knowing if you're doing the right thing in each case.
I've spoken with recruiters about this, and like hiring managers, some of them favour a short resume that says very little ("less is more"), others favour a detailed one ("your experience will impress").
However there is a consistent aspect. They pretty much all need:
- Something that fits what HR is looking for in a few seconds skimming early in the first page. Bear in mind HR rarely understands any of things they are looking for, and are easily led astray if they think you are in category X when they are looking for Y, even if you can do X and Y equally.
- Something that fits what the hiring manager is looking for in a few seconds skimming early in the first page, and doesn't look onerous to read through.
- Something that passes keyword matches.
- Depending on the company, or how you get in, something that passes an ATS's assessment of experience (not just keywords but duration working, level of things like did you do management), and doesn't get tripped up by things like column formatting.
One of the things to remember is that almost nobody will read the entire resume or CV, unless it matches what low-effort pattern matching they are doing in a quick initial skim.
Again, you just have to guess and play a numbers game, because they rarely say what they are looking for, and they are looking for different things.
It's even worse: the people initially sorting applications are usually HR contractors. They give what they thought is a good selection of resumes to the recruiters, who do further selection, maybe some contacts, and give their picks to the hiring manager.
This is an important distinction because unlike recruiters, who are usually somewhat familiar with the company business and can recognize if not technical details then experience (e.g "Oh, this guy worked for 10 years at the shop known for its high standards!"), contractors are generic clerks who have no idea what anything in the resume means. They are given some words to look for at best.
In my opinion, submitting through web portals/jobs@ emails is already a losing proposition. I can recall many cases when I've done this, got no response, then a couple years later the same company's recruiters would hound me. I'd been quite successful when I went through an internal referral or directly through a recruiter. But, if you really have no choice and go through the web then the best strategy is to stand out with anything that can catch attention of a completely non-technical person reviewing your application. A cover letter is a strong move in this case. And keyword stuffing is also important for passing the first stage.
The problem is I can't tell which companies will have an HR/recruiter vs a manager as the first filter. Almost all calls I've gotten from startups (most of which would be considered "small" companies) were via a recruiter.
I guess if I apply to an established, small/medium company that is not a startup, it's more likely to be read by a manager.
I think a rule of thumb is "by the time a company is large enough to have someone in tech doing full-time management, your application is going to pass through someone else before getting to them for a second pass of filtering."
Small, scrappy startups will have the decision-maker doing the first-pass filtering. None of those people will be called "manager".
In 25 years, I’ve never randomly spammed applicant tracking systems. My first job was based on an internship and after that I used my network of former coworkers, managers, and local external recruiters.
I work in a fully remote organization. I _always_ read cover letters. I have wasted too many years of my life trying to decipher some ungodly pile of crap somebody thought was a question (much less a spec!) and a cover letter can be an indication of a candidate's writing ability.
Poor writing leads to wasted hours, wasted sprints, and frustration. Good writing shines a light on incomplete reasoning and logical inconsistencies. A person who takes the time to write a decent spec is the person who has considered "what, exactly, do I want?" in detail. Too often people try to paper over their complete inability to write a paragraph by saying "let's get on Zoom" and spewing out nonsense verbally, because this is somehow better than putting nonsense in writing.
Unfortunately, if the person reviewing your application is a terrible writer - and most are - it's unlikely your cover letter will be read.
It seems like it would be so much more productive to give the candidate a writing prompt where they can show their skills, instead of such a poor and generic exercise of “tell me who you are and why you want this job even though you’ve spoken to no one at the company yet”.
If you value good spec writing then give them a spec-writing exercise.
You mostly get better at writing by doing it. There are a fair number of online publications that have editors and are always looking for writers. (Not paid but this is a case where it really is good exposure and a way to build skills.) Opensource.com is one I write for fairly frequently.
I've been a hiring manager for 5 years and otherwise doing candidate screening for 10+ years. Looking back I don't think a cover letter has played a positive role in getting a candidate through, but probably has played a negative role a few times due to typos etc.
Cover letters reduce in value as the size of the organisation increases. When applying for large companies with HR departments I’ve found they don’t really get read because piles of CVs are what gets passed around, but I know for a fact my cover letter is what got me into the interview for both the early stage startups I’ve worked for - when you’re starting as developer number 1 or 2 founders really care about who they’re hiring, and a good cover letter is what allows you to frame the CV in light of the company. For example my current job is with a company that does IoT based home security - a skim of my CV at the time would have been completely unimpressive in that context, but the cover letter allowed me to go into some detail about the fact I’ve been done home automation and electronics as a hobby since before I even had a job.
That's a reason, for sure. But I would say that I have become very cynical about this type of reasoning for the following reasons:
1) If you are interested in working on interesting technology, and the idea is that a traditional corporation provides only soul crushing but possibly more stable/well paying work, then I would simply say its better to have a side project instead of working at a startup, because they are unstable.
2) If you are interested in doing work that will change the world, be aware that if you aren't the boss of the startup, then you can be gone in a second because of profit reasons. Better to start your own non profit like Watsi
> Every time I got a call, I asked them if my cover letter played a role in their choosing to call me. The response was always "Oh you wrote a cover letter? Let me check it out."
> Not one person had read it.
This is probably true. But one advantage I see of cover letter is to include more keywords in your application and keep the resume clean and focused. It could potentially get you through keyword filters or boost your ranking in keyword searches.
Being an academic in a design school, my experience with interviews is different. When reviewing applicants for a job, the cover letter is the only means I have to know if they have researched the particular requirements of the university I work for. We are a western university located in an non-western nation. I need to know that they have considered what this means, especially if they are Weston. It much harder that you might assume to move to a new continent.
The academy is different. We tend to grow into s job, but a field of study does require more digging into motive beyond „i need money“, where „i need money“ is the main reason most of us look for jobs.
After my toxic 3 years at a job to whom i did send a cover letter they liked (i liked the company before finding out one guy in the department im in had seniority and was doing dodgy stuff to maintain power)
... i quit and eventually I got my job via connecting with people, and i think thats the best way one could get hired.
"Allowed me to upload one" is the red flag there. If you're dealing with a company that is asking you to use a system to upload a resume rather than communicating directly with a recruiter and hiring manager then yeah it's going to get ignored.
In one case, I found a job posting with an online form that had the name of the recruiter on the website. I dug up the recruiter's email and sent an email intro + my resume. From there she said "thanks, let me put you into the system". So double win for me because my application was acknowledged and I didn't have to fill out their custom form! (Made it to the last round).
Hitting out of the system makes you stand out and they're forced to consider you
I know in the good old days it was the way to go, and HR people are also more open to get external solicitation at any time, so I believe you when you say it works.
I’d put on the table that I twice received direct contact from candidates and it felt super weird (I don’t work in HR to be clear). I guess some would value the scrappiness, I had more of a “have I been stalked ? am I getting spammed ?” sensation.
We also had automated pipelines to handle candidates applying through our recruiting page, so entering them manually into the system would have been more of a PITA (I actually politely told them to apply through the site)
In general I’d say for small/middle size companies, direct candidature through the company’s own site is not going through a blackhole, and pretty much appreciated (no recruiting fee, went through the front door etc.)
>I’d put on the table that I twice received direct contact from candidates and it felt super weird
It certainly isn't very scalable. If it's someone totally out of the blue I'd probably politely point them to our jobs board. If there's some connection, even if it's just "Hi, I'm one of the 50,000 people who are also alumni from your undergrad," depending on my mood and how they approached me, I might spend 15 minutes on the phone with them.
When I'm contacted by a recruiter, I still have to go through that system; I've never run into an exception to that, at least not in the last decade.
Also, I did get a job once by applying directly to $BIGCORP and entering data in an applicant tracking system, without being first found by a recruiter. It did not turn out to be the most wonderful place to work though.
Luckily not everyone is living in a place where you apply to a ton of jobs at the same time. Seems very American. I would only apply to a single job that I found exciting. Can't see how sending out many applications could possibly mean applying to good jobs. More like a lottery. Guess it is the difference between there being a good social security net to catch people and not.
Think it's normal to give yourself multiple options — if you're broadly happy in your current job but come across a job ad that's more exciting you may just apply for it on its own, as your options are to stay put or accept the new role. Staying put would be your 2nd choice.
But if you're unhappy in your current place, you're more likely to apply to multiple places at the same time — if you find 2-3 jobs ads that are all better prospects, staying put may now be 4th choice. Plus you may want a contingency if you don't get an offer from choice #1/#2.
I always write a cover letter. Sometimes they read it.
But I time box them to an hour. For me, the cover letter is an exercise in reflection on how much I want to work there. If I feel really enthusiastic then my cover letter just flows. At other times they are more formal.
In that small/medium sized company space there are those that publicize nothing about themselves and have such a poorly written JD that tells you nothing about why they exist, their goals, or anything more than possibly irrelevant keywords, then have the requirement for a cover letter. In this instance, they haven't provided a shred of evidence for why someone would want to work with them. I normally see this when non-technical people attempt to hire technical people, they just lack understanding for what is important and are sometimes fresh to hiring in general; less so when technical try to hire technical (but still appears).
I'd rather have a conversation with someone who isn't HR, cover letters are mostly wasted effort.
When I was responsible for hiring I always checked and often read cover letters.
Cover letters are an opportunity for the applicant to put her CV coherently into perspective. Because a complete application comes with several documents and lists. The CL is supposed to highlight some of the relevant parts.
The mythos around cover letters seems totally wrong to me.
You're telling me that when presented with two candidates, companies routinely pick the less qualified one because... The cover letter was more personalised? They put more custom messages in there? Come on. They're going to turn down a better CV for an interview because the cover letter was copy-pasted? Come on.
Companies like the best candidate they can get for the price, I honestly don't think much else matters.
As someone who screens a bunch of applications, absolutely I'll factor in a cover letter.
For me, the presence of a cover letter with half an attempt at customisation to the company and job ad demonstrates they actually care at least a little about this role at this company. And if it's well written then that demonstrates communication skills which I value highly in my colleagues.
It's really not often clear cut which one of two CVs is the "best qualified". The cover letter is just a bit more signal that will often swing my decision towards "let's take a punt".
People want to work somewhere to earn money. I assume you're one of those people that likes to ask "Why do you want to work here?". I'm sorry to burst your bubble, but unless you're a charity or doing something groundbreaking (e.g. SpaceX), the only reason people want to work for your company is money.
>demonstrates they actually care at least a little about this role at this company
But why does that matter to you other than ego? Barring some exceptionally unique work your company does, we know that the applicant wants to work there because you offer money for their particular skills. Why perpetuate a culture of bullshitting?
So in other words: if they have a good CV, they'll get through to the next stage regardless, but if they're a punt candidate then the cover letter might make a difference, maybe?
I would then ask: if I'm a punt candidate to begin with, the number of interviews I get is primarily a factor of how many applications I fire off into the crapshoot, right? What's the increase in success rate for applications with cover letters? Is it enough to outweigh the reduction in applications I can send from hand-crafting each of them?
For what it’s worth, just because the frontline person doesn’t read your CV, someone else still might. If you’re a solid applicant who interviews almost well enough & the company is fishing for an excuse to give you a shot, a solid cover letter demonstrating interest can mean the difference between getting hired and not.
A cover letter doesn’t have to be epic. It can be short and to the point, which bucks the trend of “I didn’t have time to write you a short cover letter, so I wrote you a long one.” Something like...
“Hi Company X!
I was scooping out your web page and found a blog article on how y’all invest a bunch of time in your security audits. I’ve been reading up a lot in security myself lately, and I’m quite interested in a company that takes that seriously. My personal approach to crafting software tends towards secure by design. I’d love to work in a place that philosophy would be appreciated :)
Try this... list three to five things you are good at and like. Stalk a company a bit to find something mildly related in their social media, website, or blog. Connect thing you found to thing you like. It take a little work, but not that much work.
The point I'm attempting to communicate is that a little effort can go a long way to show your interest in a position. Many people write long & unpersonalized copy/pasta that says nothing about the job to which they are applying.
> My personal approach to crafting software tends towards secure by design
Whatever you put in your cover letter, try imagining another candidate saying the opposite in their cover letter:
> My personal approach to crafting software tends towards insecure by design
Nobody would say this right? So your original statement adds nothing. You need to get more specific and direct. Same goes for “reading up a lot in security.” What is 1 thing you were reading and why should whoever’s reading this email care?
Other than that not a bad start. You’re on the right track to keep it short and (hopefully) leave them wanting to learn more.
Which is actually an argument for keeping your resume and cover letter fairly standardized (and get a second pair of eyes on the standard). The more you change for each application, the more likely errors are to creep in.
Pro-tip: put something actually interesting about you personally on the resume. Literally the first thing I look at after scanning background and making an immediate decision. I think it’s literally the only thing to jar people out of their auto decision (especially with zoom interviews).
The one exception is take homes exercises - sometimes I’m surprised but still that doesn’t usually flip the bit
No offense, but this is difficult to assign any meaning without more details. Zero is one data point, but what's the denominator? Zero out of 3 vs 30 vs 300 are qualitatively different pieces of information.
Also, another common denominator is you. Just because you haven't had success with cover letters doesn't mean others can't or won't. Perhaps, to be blunt, your cover letters weren't very good.
Finally, just because the person who called you back didn't read it doesn't mean others didn't. These things end up in systems with lots of eyes on them.
That said, I don't disagree with your statement, just the certainty with which it's stated. I agree on balance people should generally play the numbers game, not the custom cover letter game. But, if there's a particular job you really want, it might help.
>I agree on balance people should generally play the numbers game, not the custom cover letter game. But, if there's a particular job you really want, it might help.
If there's some job or some company that you're really interested in and especially if you have some network there that might give you an "unfair" advantage, by all means go above and beyond to maximize your chances at that one company. But I agree in general that, for most people--especially more junior people--it's really a numbers game. That's not to say you shouldn't do little things that might make you stand out a bit for a given employer, but you should mostly be casting a wide net.
As an interviewer for more than 20 years I am never looking for cover letters, but I am trying to read it if they exist. I don't remember to have ever seen a cover letter than made any difference for the process or end result and I had over 1000 interviews (hard to count the exact number, too many years).
I write cover letters to highlight specific experience which is in line with the work that company is into. This is just to help the decision maker. I don't care if he or she doesn't read. I would want to take every chance of getting through screening
100% this. When I was interviewing I almost never got the cover letters from HR. When I did glance over them every time it was obviously a form cover letter that they spent 15-30 minutes customizing for our company.
If you have something incredibly unique to tell the company like "I want to work for this pharmaceutical company because your newest chemotherapy drug saved my wife's life" I'd sneak it into the resume.
Proving to the interviewer that you can write three sentences of generic fluff based on a cursory glance of my company's website doesn't tell me anything about your abilities, just how much you value your time.
For the same reason, I stopped writing a cover letter. I used to write a custom one for each job that I'm applying to. And, of course, it takes time. My take is - if my resume can't convince you to hire me then nothing else will, including a cover letter.
I inevitably read CVs with a cover letter before those without (unless the cover letter looks like a wall of text). All I ask of a cover letter is that it reminds me to think of you as a human, nothing more; reading lists of projects, employers or education achievements is very dry and mechanical otherwise.
A bad cover letter is going to be worse than none, but it really takes very little effort to have something decent and reusable. Many modern CV forms include a small space for it, that's less than ideal but still ok.
That explains some interactions where they sort of vaguely wonder why I think I’m right for the job given my resume.
Well, I told you why in the cover letter.
Years ago I started keeping a full version of my resume with everywhere I ever worked (sometimes it helps, like for the background check I had to do once), maybe I should be keeping long form discussions of what I worked on, and Then cherry pick the bits that are specific to each position I apply to...
I don't think your evidence has much bearing on the point you're trying to make. In my experience from the other side of the table, it's quite common to not talk to the person who picked your resume. I make these introductory phone calls often, and while I have a copy of your application I don't see it until after someone else has decided we should talk to you.
I believe Denmark takes coverletters seriously. They also want photo of yourself on the CV which is uncommon and often frowned upon in other countries.
They want to know a bit more besides your skills and abilities.
Maybe I'm not thinking about it properly, but if they would discriminate based on my photo, they'll probably do so once they see me in the flesh and give me some excuse to not hire me.
I'd rather not go through the wasted effort of making it to a interview and they instead ghost me so I can focus on an employer that does want me.
> A cover letter is a way to keep you out for not following the instruction of send your cv and a cover letter, nobody is going to read it.
The fact that you say CV makes me thing that either:
1. You're in academia or some kind of research discipline.
2. You are not in the US (we distinguish between resumes and CVs, and CVs are almost unheard of in the engineering sphere here).
My comment about cover letters is US specific. Academic/research jobs should have a cover letter - I agree.
Most engineering positions I apply for do not require a cover letter - it is optional. If it is required, I do write one - but that is extremely rare. And I often do get calls from companies that allowed me to upload one (optionally) - even though I never upload one.
My guess is that the majority of companies that optionally allow you to upload one will never notice if you do.
My guess is that most likely the reason you can upload a cover letter (optionally) is that whoever designed the site is using a generic template - not because they actually want one.
In American business, snarkily, CVs are resumes from people who haven't learned how to edit.
US resumes are ideally 1 page with 2 pages (IMHO) being acceptable if one has enough experience.
American CVs spell out everything with a length that scales linearly with experience. Every publication. Every role. Major projects. Awards. Etc. For long-time academics these can run over 10 pages. A recent PhD recipient might use 3-4 pages for a CV.
Not American either but CVs (Curriculum Vitae, course of life) are much more comprehensive than resumes.
If you're a researcher then you'd include a list of all of your published work, presentations, lectures, grants, scholarships, professional associations, etc.
In the US, the CV term tends to be used more in academia and research while resume tends to be used more elsewhere. And, in academia, you're more likely to list the sort of things you mentioned. Though the terms certainly can be used interchangeably. I have a ton of (non-academic) publications as well but, other than a couple books, I'd just include a hyperlink to a pubs page on my website that has a sampling.
I guess the question is, how does this person "seem really good"? To determine this, they have to have a well written resume that highlights relevant experience. Most resumes seem to be "company xyz - frobulated the frobulation system"
Unless of course your company is interested in frobulation also.
The contrary: "this person has a bunch of experience on their resume that is possibly beneficial, but their cover letter doesn't give any indication they have thought about the role they are applying for. This other applicant shows insight into the requirements of the role via their cover letter, and has highlighted key areas of their experience, giving greater detail about how it will be useful in this role."
Who are you going to pick to interview?
Perhaps this is more important for niche industries, and smaller teams. In a large team you can get good coverage of skills through sheer number of people. In a small team its the alignment of skills is more important.
When hiring (small, niche org) I carefully read all the cover letters.
I understand this hypothetical, my point is: I don't think it's actually relevant. It's not going to be the tipping point.
I should make my contention clearer: I think that companies are extremely unlikely to forego interviewing a candidate that otherwise looks good because they had no cover letter. This doesn't just apply to the best candidates - if any candidate looks hireable in relation to the rest of the applicant pool, they will put them through to the next stage of the process. Once you've actually sat down and spoken to someone, your written introduction is irrelevant.
I do think it probably matters more for small companies, but they're also going to get way less applications to begin with so it's like... You're really going to just not interview good candidates? Really?
One point of data: My large organization’s HR department lists a cover letter as a requirement and will forbid us from moving ahead with even a first round interview if the application is incomplete. So yes, really, we can’t interview candidates who demonstrate right at the front door that they can’t/won’t/haven’t read the application requirements.
Most people aren’t the best candidate. And most jobs don’t require the best candidate.
I’ve got a lot of resumes and cover letters to look through and at the end of the day, a lot of people are going to be a pretty good fit. I’m going to save myself a lot of time by discarding anyone who didn’t bother to read the job post and follow directions.
Ok, but I have a lot of jobs to apply for, and I'm going to save a lot of time by not hand-crafting each application. So the relevant question is: does the reduction in hit rate outweigh the increase in application rate? I argue: probably not. Depends if you're exhausting all postings.
The whole thing seems screwy to me. You only hire people who put a lot of effort into contacting you? So you don't recruit? A good candidate is a good candidate whether or not they spent half an hour on a cold pitch.
The problem is, you're putting up job ads (that might well be fake, candidates don't know) and expecting candidates to put in a lot of effort. You're not respecting the nature of the situation - both sides have a very low hit rate, so it's irrational for either side to put much effort into individual transactions (if they're in demand). Filters that filter out low-effort applications filter for one thing: people who have an incentive to put in effort. That doesn't just cut out people that are spamming.
> Ok, but I have a lot of jobs to apply for, and I'm going to save a lot of time by not hand-crafting each application
OK, so do that.
You’re applying to a lot of jobs and you don’t care too much about any one of them in particular, so why should I care about your application in particular? I’ll save a lot of time by not closely reviewing your application.
Again, my point is that most people aren’t in demand and most jobs aren’t that demanding.
Someone is going to read the job post in full and put in a modicum of effort and will be a decent fit. I’ll look for that person vs. the person who put in zero effort and will be a decent fit.
You must be that rare unicorn that actually realizes their company isn't a future FAANG. A lot of consternation over hiring could be avoided if most companies realized they can get by just fine with average developers. But most people psychologically want to hire the "best" developer available and so would not be satisfied with "can do the job".
This doesn't make sense. If "minimum bar" is your selection criteria and you're inundated with so many "good enough" candidates that you can't interview them all & it doesn't matter who you pick, you're overpaying. Why not drop your offers until you're selecting from a smaller pool?
I don't mean this hypothetically, I mean: isn't this what most companies actually do?
But in any case, what you're saying here is: "if the job has a large applicant ratio and you are unlikely to get hired, then I will use time spent as a filtering mechanism." The rational thing to do is to not apply to those positions (or spray & pray).
>This doesn't make sense. If "minimum bar" is your selection criteria
I think "minimum bar" refers to technical skills, not all selection criteria. It's perfectly sensible* to look at a larger pool with the minimum skills and select from the few with the right attitude and attention to detail.
That's not the same strategy as reducing the pool to the cheapest candidates regardless of their attitude, and isn't going to produce the same hiring decisions.
I just recruited in Swiss academia, and I read every word of the cover letters, and they played a significant role in selecting the final 3 for interviews.
In French it in is called a "letter of motivation" and it should explain why you are more motivated to take and do the job well than all the other candidates. A serious and motivated candidate shows in their letter.
Hotter tip: toss the advice from people who interview a lot and aggressively and seek advice from the people who wander into opportunities seemingly without effort. Ask them how they approach their job search.
Most of this advice is bad or fixes problems that come from scattershooting an interview process by bulk for nonsense you don’t even care about.
This blog post outlines the most miserable way to do a job search. And the way to get rejected a lot.
In my experience, it's not possible for (approximately) anyone to "wander into opportunities seemingly without effort" at many of the companies I'd actually work for. There are companies which can be well-aligned to your professional interests, compensation requirements and growth expectations which are also difficult for just about anyone to get a job at. Unfortunately, these tend to be the companies I want to select for.
Note that I agree with not applying to jobs shotgun style - I'm just nitpicking very specifically on the idea that you can generally find someone who reliably walks onto the jobs they want. But maybe I've misunderstood you.
It's the #1 way to pay progression, sadly. Job switching rapidly in your early career is the only viable way to get pay raises - unfortunately. It's worked out - in that sense. I'll be switching again here soon enough - but no more startup shit. Big N or die trying. (Although I said that last time too - but now at least I have options currently worth $180k+/yr that put me near Big N in terms of pay... but only if they actually ever get turned into real $$$)
Honestly - I feel like I stick around at places too long. Get my first year vest and then immediately bounce is what I want to do but I sometimes stay longer because I'm terrible at interviewing. I'm nearing 2 years at my current place and I'm dying to leave because they won't increase pay and keep putting me under absolute horseshit of managers.
When you join startups - you can ask as many question as you like to find the right place but in less than six months - the company, your manager, your team, and what you work on can completely change for the worse. Even when I was at a bigger company - that still happened. Half my team was laid off and my manager was fired... both had no replacement.
I'd stay if I found a place I genuinely liked but even if I think I like it when I join - it can drastically change within six months... And, sadly, that's kinda been my experience at every place. Managers fired, sexual harassment lawsuits against the CEO, employees laid off, CTOs fired, huge pivots in what I work on, drastic product changes, etc. etc.
Completely agree; the scattershot approach is really only good as the basis of a clickbait blog post. They would have been better off spending two hours per day doing leetcode, then just a few technical interviews.
My last round, I refreshed my memory on algos and did a bunch of leetcode, had two onsites, got an offer from one.
I didn't "wander" into anything, but I did plan it out so my effort would be more effective.
Don’t interview in bulk! Look for the positions you really want and think can grow you in a way that matters. Then find out what skills you need to do that. If you have them, go talk to that set of organizations and tell them about your skills! People desperately need good people!
If you don’t have those skills yet, either look for a different match... or think about where you’d need to go to get those skills. ... and then go talk to those organizations!
Figure out something you’d like to work on. Figure out where your skills are the best match for those things. Then interview for those!
Your conversations will be more focused. Your approach will be more focused. You will get jerked around less. And people will be thrilled to talk with you and figure out how your passion aligns with what they need. And if it’s a match, they will want to hire you.
Do not mindlessly grind. Do not scattershot. Do not play games.
All of that is unfocused, unsuccessful and unlikely to connect you with a position you even care about!
What ends up happening with these people is they set up this huge funnel and then at the end of it they play offers against each other and have agonizing decisions about which numbers to accept for a set of positions they aren’t even excited about instead of focusing on what matters:
1) Which position will grow you the most?
2) Which position do you think you can exceed expectations in?
You want to optimize for the sweetest mix of both of these. And both of these factors are complementary to each other. Organizations grow the people exceeding expectations and you will exceed expectations most in a position that provides you the glide slope of growth which is the best match for your interests.
If you’re early career, an offer is the start of a business relationship. Not the destination. And if you’re doing it right, the initial offer is what they want to pay you to try things out. What they will want to pay to keepyouhappy will be more than that after you join. If you’re later in your career maybe you and the company are so correctly calibrated to each other and in sync that your initial offer hits it exactly on the head and the adjustments are for growth from there. Whatever. Who cares. Even if what you care about is money: go for the job where you will grow the most and provide the most value, because ultimately that’s where you’ll have the most leverage to grow numbers either in the same company, or in a different one.
To say nothing about the obvious fact that this is a huge chunk of your time each day you engage in it and it’s 100% worth it to do something you’re excited about instead of just taking the offer for the person who pays the most. This field pays well. A 150k/yr base isn’t a disaster even if you could have gotten 220k/yr elsewhere. Which is totally a huge difference! But will round away over time when your growth is explosive and the engineer plugging away logging hours at a 220 base goes nowhere, stalls and ends up with uninspiring refreshes and trajectory.
It is definitely worth applying for lots of places at first though, that is if you’re not blessed to have people around you to help steer you. The problem is writing a good CV is hard. Knowing how to present yourself in interviews can be hard for some people too. So applying for a few jobs early on gives you a chance to refine your CV and improve your interviewing skills so that when you start applying for the jobs you actually want you are a stronger candidate.
Of course, if you already have friends or family who work in the industry who can help train you on these skills then you’ve already got an advantage. But there’s a lot of people at the start of their careers who don’t.
60 interviews in 30 days is not a process in which you’re carefully learning and calibrating to tune yourself, extracting lessons from each one.
60 interviews in 30 days is throwing an entire pot of spaghetti against a wall and not even waiting to figure out if you cooked it right before dumping another pack on the stove and firing back up the burner.
This not a person carefully working towards a thing or getting practice to calibrate. This is a person who has read too many blog posts like this and regrettably and agonizingly thinks the process of finding a job involves interviews in bulk and funnels and a spreadsheet at the end of which pops out some offers that are then mostly weighed based on numbers and one gets accepted.
This process is what way too many people who blog about their job searches do and it is completelyunhinged.
And it is also, not what most of the good engineers I know actually do.
My point is if you’re at the start of your career and only have blog posts for guidance then actually you’re only friend is trial and error. So it’s better to fail early so you up your chances when opportunities you’re really passionate about come along.
Obviously once you have enough experience to know not to spam every job out there, you would also have enough experience to know how to apply for those jobs you have purposely selected. But to get that experience you have to either have someone watching over you or just accept that you’re going to fail and learn from that.
When I started my career, I had no friends nor family in the industry. I didn’t grow up in an affluent area nor go to any distinguished colleges. I had literally no idea how to break into the industry and it took many mistakes to get as successful as I am now. There are plenty of others in the same boat as I was. So teaching them it ok to fail is just as valuable as teaching people how to succeed.
I think it depends on where you are in your career and how well you understand what you really want to do.
Out of engineering school (in pre-email days) I did on-campus interviews and sprayed out a lot of generic resumes. Because it was booming at the time, I got a bunch of interviews in the oil business and ended up taking one of those jobs for a few years. Somewhat similarly out of grad school although more on-campus interviews and ended up taking an offer from a company I hadn't been that interested in interviewing and worked there for more than 10 years.
Since then, the other 3 jobs I've had have come through reaching out to someone I knew and I probably didn't even need a resume except pro forma.
This is great advice. It also helps expose one of the fundamentally broken pieces of advice that come from scattershot interviewers: "make sure you know at least one thing about the company so you look good!"
Why are you interviewing somewhere when you don't know anything about it? Sounds like a great way to line up jobs you don't even want, which is a waste of both your time and everyone at the company whom you spoke with.
I think your focus is a bit too narrow. For a mid/senior role, regardless if its in tech, your advice is probably good. You have experience, you know what kind of work you like and dont like and you have more knowledge of your industry.
If, however, you are a new graduate, you dont have this knowledge. I recently graduate from university. I'm looking for junior roles. I have a vague idea of what I like and dont like, but also realize that the field is so unbelievable big. There are so many companies out there, especially smaller/medium sized ones that make great products and are probably fun to work for. I would love nothing more than to take my time and research what each company does on a detailed level. But I dont have this time. I need a job that pays my bills.
In the beginning of my job search I went out and wrote detailed cover letters and fine-tuned my resume to match the job position. I even researched what they were doing in depth and made sure to mention this. Do you know the most common response I received after ~2 months of writing applications? Nothing. Not a single word. Keep in mind I didnt just apply to the big ones. I looked for companies of all sizes that really matched what I studied and would love to do.
One month ago, I started the shotgun approach. I looked for companies that had somewhat good ratings on glassdoor and similar platforms, made reasonably sure that I could see myself working there, put them in an excel list, and starting blasting generic resumes. So far I got 8 invitations to interviews.
I know that times are a bit unusual and everyone is stressed, but right now, for me, and from what I hear from my friends, its unfortunately a numbers game. Your mileage may vary.
I agree. Especially out of school, barring a thesis/project/etc. that really lines up well with certain employers, it's really a numbers game both for you and for any large company. Heck, way back when, I got a job offer from Boeing without even a phone screen based on my resume and cover letter; I had on-site only after I asked to visit.
In the days before email and online applications, I just sent out tons of letters/resumes plus on-campus interviews. Mid-career I totally switched tactics and the few jobs I've had since came entirely through contacting people I knew.
I send an email to four or five external recruiters that I have been working with or years , they send me a list of jobs, matching requirements, pay range and location.
I tell them which jobs I am interested in, they submit my resume to the company, handle all of the scheduling and follow up with the hiring managers since they don’t get paid if I don’t get hired. I didn’t need to do any research.
Without being a special snowflake, I’m batting close to 100% using the process -Application/non rejection.
Your advice is (in many words): Be picky. In fact, most people don't have the luxury to be picky. When you need a paycheck, you spam your resume because the whole thing is a numbers game. You are trying to get past filters that tighten up and loosen up randomly day-to-day.
I have been a freelance coder for more than 20 years, I have worked on a lot of different subjects, I wrote compilers, small embedded kernels, shipped dozen of products, did thousands of OSS contributions…
But I would be terrified by one of those interview.
For example: How can you write a sort algorithm with 0 error in such a short time, without reference? I would never be able to do that. I "know" how they work, but with qsort() since C89 there is very little reason to write one, except if you have special needs, and those special needs are "the problem" not the sorting algorithm.
Or I would be unable to write the TCP handshake procedure on a piece of paper with just a pen, even knowing I wrote a mini TCP stack a few years back for an embedded chip.
I can think of a million technical questions for which I have no answer, how do you cope with that in an interview (with the added pressure…)?
I am genuinely wondering if I am bad, or if it is those "coding challenge" that are inappropriate.
From what I have seen, those interviews show only how well you prepared for the interview. And they are designed to check if you know basics for the position needed. It really looks like most companies don't care what you know or did - they are only interested if you are able to do the job they need.
Articles like this get published and shared only because you (the collective "you") are overcome with anxiety about the subject. It doesn't tell us if the problem is widespread, only that it's engaging. The comments share the same dynamics.
For my part I hire people I know can remove more problem from my desk than they add to it. If you can show that you're a good fit.
> I am genuinely wondering if I am bad, or if it is those "coding challenge" that are inappropriate.
Did you read the article? One of the things the author learned was a key thing that most people who complain about this kind interview don't understand.
> Yes, your interviewer wants to see that you can come up with a solution, but one thing you must not forget is that they also want to see that you can collaborate with other team-mates to come up with a solution. While companies want rock-stars, they also want team-players.
I'm sure there exist interviewers who sit there and let you sweat trying to come up with something that you don't know. But most interviewers, at least at places that require a steady stream of quality engineers and thus have invested a lot in their interview pipeline, only expect you to know the fundamentals. They may ask you to implement a TCP handshake... but they want to see how you approach the problem. If you know how to do it by heart, that'll be to your credit. But if you don't, it's expected that you work with the interviewer to collect requirements. Seeing how you make progress on a problem you don't already know how to solve is exactly why you're there.
My interpretation was he was willing to throw himself all in. The author was willing to play the game of interviews regardless of how good or bad it was. Coding challenge, social exchanges, etc etc.
I get it, there are a lot of bad interviews out there that we hate doing. But if you want the most options you have to fire as many bullets as you can while trying to maintain the quality jumping through all the hoops.
All I'm saying is, it is a choice. We're all trading one thing for another and that's perfectly okay - it's what's important to each own person.
> This guy obviously loves interviews. I hate them. I am not going to practice interviews with my friends and have a real interview once a month like he advised.
You can love or hate interviews, but they are the way to get into a company. If you dream of getting into $BigCo, you better nail your interview.
If you don't care what company you work for as long as you get enough money at the end of the month, that's perfectly fine. No need to practice interviews then.
Personally, while I don't dream of getting into Google, Facebook, or another company with comically high hiring bar, I like self-improvement and if I know I'm bad at interviews, I want to improve just for the sake of it.
I'm sure interviewing skills translate well into other areas, such as public speaking, presentations, demos, sales, pre-sales, ...
I think that's the actual complaint though -- interview skills get people good at things they don't want to get good at, at the expense of things they do want to get good at. And the things they want to get good at may be, ironically, the actual skills they need for the job they are applying for!
I can’t say I never have taken a role with a stupid coding challenge (because I have) but often you’ll go for 4 or 5 interviews maybe 4 having coding challenges. At least one role will end up having 5 stages! At least one will end up being just a 15-30 mins chat with no challenge, with either an instant offer at the end or a phone call from the recruiter 20 mins after you leave the interview.
Inevitably I end up taking the one that was just a short chat.
Indeed, when I interview I view whiteboard coding, take-home tests and so forth as red flags. The happiest jobs I've had were those where the interview was naught more than a friendly conversation regarding my CV.
Wow you just made me realise that most of my jobs are the same, I've passed plenty of coding challenges with flying colours but almost always went for the jobs where we just chatted and got along immediately.
I had one whiteboard interview (which I blew) in the past. I decided not to do whiteboard or challenges that take time unless I get paid. Most work I got was because I could show previous experience which matches the job I was trying to get.
serial interviewing is pointless, unless one is a generalist and has to overcome massive competition, but going in a portant interview with that first time anxiety or not having practiced one's answer well to bullshit questions is not optimal either
a couple interview lined up before an important one is less commitment and still effective.
not really happy about having to waste some HR guy time for a job I'd likely not take, but hr types have had no qualms about wasting my time either in the past so I see it as a return in kind
And yet I’ve never ran into one. Sure there are some people that ho are just bad for employees or with bad software engineering practices.
But I couldn’t say that they didn’t know how to program. I’m talking about people with actual verified experience here.
I can’t help but feel like we spend way too much time trying to avoid these master charlatans who manage to have years of experience doing a job they can’t actually perform when America mostly has at will employment.
If you’ve only ran into 2 of them in your entire career it seems like there we’re probably better off trusting people’s verified experience than wasting millions of hours per year trying to a filter out the tiny fraction of people capable of pulling that off.
And if you did happen to hire one of those people, it should be pretty easy to figure out that they aren’t producing any actual output fairly quickly. Then you fire them.
I’m suggesting you conduct interviews for experienced candidates like virtually every other industry and trust that if they have 10 years of verifiable employment experience as a programmer that they aren’t complete charlatans.
If 1/100 people are (and in my experience and the person I was replying to it is significantly less than that) you’ve wasted less than a half hour per candidate.
You’re not wasting 40 hours on the 99% who aren’t frauds.
Reputation, recommendations, and references work well.
You can contact the previous company or previous co-workers if you don't know much about a candidate. I know some companies are very secrets but in practice it's often possible to get a "yes you can hire this person because..." or a "you don't want to hire this person because..." where I live.
After going through a few of these, I'm coming to the same conclusions. Even though I enjoyed some of these, I hate the entire process, mostly for the time consuming aspect of it. You're going through a series of stages, each taking time and causing you to be on edge, and then waiting a couple of weeks for an answer that end it suddenly, just like that. I'm too old for this shit. I want to have an two way street conversation and technical discussion to determine if I can be a good fit for a position and maybe if interest is on both sides, continue on technical discussion on the merits of the job, rather than writing code in an online document.
Sadly, most big well know valley companies are doing the leetcode obstacle course, because there are many many applying for the highest salaries in the industry. I can't see it changing anytime soon.
I've been doing some mock interviews for friends and I've had a couple realizations. Almost everybody gets nervous at interviews. I get nervous, you get nervous, we all get nervous. However some are able to tamp down the nervousness and not let it show. There's nothing wrong with being nervous, but it is useful to project confidence. Stuff like smiling, speaking up, even providing a light joke can help you seem more personable and get you ready to perform.
When I have an interview, I tap into techniques that I used when I competed. I used to do a very individual based sport. Tournaments would be stressful since your performance solely depended on you. Therefore I learned a bunch of techniques on how to keep your mental game going. Techniques such as listening to music to hype you up, having certain ritual foods or drink, self talk, meditating, etc. One accomplished athlete I knew talked about how he'd tell himself that he'd put in the training to be the best. Therefore he knew that he could do it.
It's a little weird viewing an interview as a competition but it's really about getting through a stressful, high risk/reward situation with the right mental game.
> One accomplished athlete I knew talked about how he'd tell himself that he'd put in the training to be the best. Therefore he knew that he could do it.
In case your individual based sport is not climbing and if you haven't already watched it, I highly recommend "Free Solo" which is a documentary about Alex Honnold and his extraordinary preparation to climb El Capitan. I warn that this is a nerve-wracking film. However, the way that Alex talks about "becoming perfect" is interesting. He practices a part of the route so many times with ropes/harnesses that he becomes perfect at it. In other words, he has no fear because he is perfect at the route.
What I’ve learned from giving and receiving technical challenges over the years.
The only thing these challenges do is determine whether someone can do your coding challenge. No indicator at all about their ability to actually solve your business problems.
Instead, give the applicants an offline evaluation solving something within your actual dev/testing environment. Pay them for their time. 2-4 hours.
The best interview process I ever had culminated in me logging in to a testing system and working on what I believe was an actual problem at some point in the companies history. The IDE and DB was there and ready to go with some docs and a ReadME. They told me ahead of time what rate they would pay me and that they would pay up to 4 hours. If I decided to spend more it was on me. And I had 4 business days to do it.
"Like a skilled surfer, I wanted to learn to ride the high pressure waves that came with interviews."
Yeah, bro, that's not surfing. Good surfers respect the big waves. No coder is going to respect a bad interviewer. But I trudged on through the article and ran into this gem:
"There will be times when you’re stuck. And this could be caused by a number of reasons: you don’t have the requisite knowledge, incorrect assumptions, missing details, and so on.
"I used to think that at such times I was being judged by how fast I could come up with a solution. So I would be quiet, thinking, not communicating with the interviewer, just thinking.
"And this is where a lot of us get it wrong. I get it, you need some alone time to think. But sorry to burst your bubble, that alone time is not when you’re being interviewed by a person.
"Yes, your interviewer wants to see that you can come up with a solution, but one thing you must not forget is that they also want to see that you can collaborate with other team-mates to come up with a solution. While companies want rock-stars, they also want team-players.
"Since your interviewer is a friend, a buddy, a team member who’s on your side and means well for you (Refer to 4), talk to them while you're figuring it out."
Yeah, the interviewer is definitely your friend, and you have to work with them as a team in the interview. This advice is gold. If you do not feel that they are a friend, you can politely ask to end the interview for personal reasons. No use interviewing further, for the same reason you can end a date if you are no longer comfortable.
>109+ applications later, I landed myself more than 60 interviews. These comprised more than 60 introductory phone interviews, 50+ technical phone screen interviews, 18 take-home coding projects, 11 coding challenges and 8 on-site interviews including 3 virtual ones.
Obviously not every company follows the same process, but it seems like the author found it hard to make it through tech screens into onsites. So I'm not sure how much I'd weigh on their advice in that stage of the hiring process. But maybe someone with better access to the data can do a more nuanced analysis, like how often completing a code challenge led to advancing in the hiring process; I found those to be quite easy on average, but surprised to see how hard they were for the roles I was applying to -- it's not often an SRE would be assigned a programming task involving clique analysis.
Those are those sort of numbers I'd expect for every candidate. The point of a technical screen is to filter people out. They're not an objective check to see if a candidate is capable; they're a relative test to narrow the number of people you invite to the next stage to the best 5 or 6 candidates.
If you're rejected at that stage it doesn't mean you're not capable. It just means the screener saw half a dozen people who answered to questions a little better.
I mean sure. But I’ve never once been rejected on a tech screen.
All the best people fail because they're doing stuff that's at the edge of their capability. They're pushing their limit, and sometimes they push too hard. If you've never failed it's much more likely to be because you've never strayed out of your comfort zone than because you're amazing and there's no challenge you can't meet. That's not necessarily a bad thing; we do some of our best work when we're not under pressure, but you shouldn't really criticise people who do fail at things. It might not be because they're 'worse'; it might be because they're trying to do harder things.
Personally I have a lot more respect for people who try and fail, especially if they get back up and try again, than for people who coast along never failing. Only failing and trying again shows you have character and grit.
Routinely failing a simple tech screen is not a symptom of stretching. It’s a symptom of probably not being in a place to be blogging interview lessons for others. Totally credit to this dude for putting himself out there, but I think he’s radically miscalibrated to be doing so in a way where he’s had this experience and is off handing out advice. To extend a more accessible analogy, in universities, the people who pass the course the first time are picked as tutors. Not the people who re-took it seven times because it was a stretch for them.
> it might be because they're trying to do harder things
I literally work on one of the, if not the, top team for what I do in the entire industry.
Well first off I think any company using leetcode as a screen for their candidates is out of the minds. (It seems to be a popular way to be out of their mind but that doesn’t make it a good idea. :))
But implementing a trivial unoptimized solution for the problem you linked is feasible enough in 45 minutes. Talking idly through how one might tweak the algorithm to optimize, or adopting an optimized algorithm if one occurs to you as you’re implementing the basic one also seems fine. If they want a tested, optimized, and implemented novel solution in that period, they are testing for people who grind leetcode and not people who are good engineers. I would have likely saved myself the time by not applying to a company like that in the first place!
Screens should generally focus on finding candidates worth talking more with. Leetcode exercises are low value for that.
If you want to learn anything, don’t work there. Work at a place that selects for better talent than mindlessly picking leetcode exercises as a screener. You will learn more, you will be at a company that does better, etc.
(I have never screened a candidate using leetcode. I have never been screened using leetcode. The one time someone tried to screen me using stupid questions like this I finished our session and promptly terminated the process when they called me back for a future round because while I may have passed their screen they emphatically did not pass my screen. I don’t study for interviews, nor do I expect people who I interview to study. Nothing I’m going to ask is something you can cram about the night before. This isn’t a college midterm.)
I’ve always been surprised at how hard people seem to work getting a job after the first one. If you live in a major metropolitan area in the US outside of the west coast, it always felt easy to get your yet another software as a service crud job. When I reset my career in 2008 and started down the path of “enterprise developer” leading to “dev lead” in 2016. After muddling my way through the recessions and switching jobs 4 times. It really felt easy. Send my resume to some local recruiters, pattern match my resume to available roles, phone screen, in person simple interview process, get job, make more money.
Even now the path from dev lead in 2017 to “working for a FAANG” was easier than most because I avoided studying algorithms and “leetcode” and went into cloud consulting which basically involved a bunch of soft skill “tell me about a time when...” questions.
> I mean sure. But I’ve never once been rejected on a tech screen. Most people I’d want to take advice from don’t get screened out often either.
When technical screens are calibrated to actually be basic, it's probably fair to assume someone failing them is unqualified (unless they just get severe interview anxiety!).
On the other hand, many technical screens in fashion these days are the same level of complexity and depth you'll receive in the onsite, there are just fewer of them. I once received a Leetcode medium question in a tech screen. I solved it without having seen it before, but it was a shitty, unoptimal O(n^2) solution. I hate getting asked questions like this, and I have an academic background in mathematics and statistics.
I can totally understand someone who is otherwise a strong engineer not passing this kind of technical screen, because most people don't grind Leetcode. I wouldn't hold it against them.
The easy response to this which I usually hear is, "Well don't work for companies with dumb technical screens that have that bar." To which I respond, "Okay, but where else can I work which will pay me $500k/year to work on things I love?"
Well, your analysis is a miss here: many of those technical phone screens led to take-homes, not on-sites. I’ve rarely heard of a company doing both a take home project and technical on-site (I did this once; it sucked).
I don't know why everyone in these threads is always obsessed with hit rate. It's totally irrelevant. It doesn't tell you anything.
If your success rate is 90%, you're probably applying for positions that pay less than you're worth. If you stretch your salary target, your hit rate will go down. 2% hit rate on $200k jobs is better than 90% hit rate on $40k jobs, end of discussion. Final salary relative to actual value is all that matters, and that's very hard to evaluate.
I’m living in a major metropolitan area on the east coast. The salary range locally for any level is at most $35K -$40K. That’s real money, but the interview process is not much different for the high end and the low end. It’s mostly based on skills and experience.
What I learnt from dozens of C++ interviews over a few months in London, is that interviewers are obsessed with the tiny, niche corners of C++ that they're familiar with, and normal developers would consult the docs for, and have zero interest in whether you can write clear and concise code that solves a problem. When would I ever write my own std::enable_if.... on a whiteboard?
Years ago, C++ interviews used to be 'what's the difference between pointers and references, stack and the heap', and a bit about v-tables and memory management to prove you know something about C++.
Welcome to 2020, and language that needs to be quietly put out of its misery.
Is asking to implement your own enable_if (or equivalent) actually something you got asked more than once? I feel like just asking to describe how/why you use it would immediately screen out the bottom 75% of C++ developers.
When I was younger and more stupid I was once asked to interview 20 people all in a single day to select half a dozen initial developers for a startup. This was my first task at a startup where I was supposedly to become CTO or something like that. I did it but I also learned, as you can imagine, it is pretty much stupid idea. This led me to resign from the position on the same day because I decided founders were not reasonable about making business (treating people as replaceable cogs).
It’s amazing how many startup founders get caught up in the idea of looking like they’re moving fast at the expense of everything else.
Doing a phone screen on 20 people in a day would be a stretch, let alone full interviews. This sounds more like a hazing ritual than anything else.
Ironically, I know plenty of people who would have pseudo-succeeded at this task by pretending to have interviewed the 20 candidates but instead just hired their friends. These types of startups are magnets for people who can put on a good show while doing everything in their power to enrich their own careers.
There are too many good startups with genuine founders out there to waste your time on these hustle-and-grind founders.
I would never be able to have interviews with them all in a single day (the constraint was me and the two founders had to travel to another city to get all interviews done in one day and I was asked if I can organize it). So what I, in my naivety, did was to invite them all to single room for an exam-like event and gave them programming tasks in Scratch, if I remember well.
Once we had results, we took 10 with best scores and had half an hour short interview with each one, after which we debated and selected 6.
Yes. That did happen. I even felt quite proud that I was so efficient. I still feel dirty. Have a laugh.
Only after I came back home I have realized what happened and that these people are going to be backbone of the company for years to come. I have realized the founders, coming from a larger company have absolutely no ability to form a team. Because they have always been joining an existing team they have always looked at the team as a collection of random people and decided that it doesn't make much difference how the people are selected as long as they have a team of people who can demonstrate they can program.
What I learned from the fact of carrying out 60 interviews in 30 days is that there are awful lot of organizations that are unable estimating technical competence and have no clue how to do that but introducing time wasting unreliable excuse activities masking gut feeling decisions. Those rushed but still overly simplistic tests only measure how good someone is in those tests, not how good someone will be in a position.
It is a bit naive expecting reliable answer for such unspecific question for that a broad spectrum situation. The topic here is to discuss the problem and even that is too much for the limits of this medium to be complete and reliable. What was your point with your useless and not constructive complaining? : )
Imagine your friend has to hire new people for his team. You just communicated to him that he sucks at "estimating technical competence" with his "unreliable excuse activities masking gut feeling decisions" and that his "overly simplistic tests only measure how good someone is in those tests, not how good someone will be in a position".
Of course, he would love to have a direct measure for how good someone will be in a position. Who wouldn't? So he asks you "well what should I do then?". What do you say?
To be clear, this is a hard problem. There are many dimensions for "how good someone will be in a position", and the interview process is designed to filter along as many of those as possible with reasonable effort.
Ultimately there's only one reliable way to find out if the candidate passes all the thresholds in day-to-day work: Hire them. But you can't do that with every candidate.
Being the process multi dimensional was my point exactly, thank you for expressing that so explicitly!
But those pressured simplistic tests are not simply part of the whole picture but an exclusion barrier to throw away candidates and easing the life of the lazy recruiters!!
You must not be serious you do not see that!
My friends have broader perspective and make much more competent hiring procedures than this schoolboy mentality of whiteboarding or asking 5 questions to throw away those work in real life not in artificial simplistic tests!
Yes, it takes longer than the simplistic ones, because it is so multi dimensional that any less would be an incompetent process for god's sake!!
Anyone insisting those simplistic ones as definitive barriers - not merely part of a process - want to have excuse to get rid of the whole activity very quickly, doing bang up job! Not really care about real competence but superficial characteristics only that can be point at very quickly!
There are multitude of ways handling this matter much much better - too long to elaborate here -, I met with several ones, failing or succeeding, heard about the rest. All taking the effort that any reliable hiring effort requires, unlike these very simplistic ones criticized here.
I suspect that the main problem with hiring in our industry is that coders have the unfortunate tendency to treat other coders as if they were code. We treat job interviews like they're some kind of unit test. Add this assertion, run this same unit test every time, reject the assertion failures.
Humans are not code. We don't behave algorithmically. It's well known that job interviews are very poor predictors of performance. The best predictor of performance is past performance. It's not a perfect predictor by any means, but there are no perfect predictors. Hiring is a crapshoot. We need to get over the conceit that we can hire without making mistakes. To err is human.
Advice number 6 is the most important one and I learned it the hard way. You may be a genius but the interviewer won't know until you express yourself. Don't sit idle thinking about stuff. At least talk what are you thinking.
I had a 2 hours technical interview with 5 people where I enthusiastically expressed my thoughts about the role just to end up receiving a "does not fit into the team" later.
None of the other chatty interview bore fruit despite of having a good atmosphere and constructive chat of likely minded persons that I ended with good feelings.
Likely a lot of other aspects weight much more. Especially with sometimes socially awkward technical (geek) persons.
109 applications to 60 interviews is a phenomenal hit rate.
I’m mixed on cover letters. I rarely read them, and a poorly written one can do more harm than good. They can be used to explain why a non-obvious candidate may be a good fit, but that’s usually better done via 3 bullet points attached to a referral.
Not really. I was just your average every day software as a service CRUD developer from 2008-2018 living in a major metropolitan area on the east coast - not NYC. Before that I had stayed at a job for a decade writing programs for batch processing in C.
2012 - after the company I worked for went out a business, I landed a contract to perm role in less than 2 weeks. The company was crappy and I just sent an email and didn’t come back to work after lunch. I met a recruiter for lunch that day. They submitted my resume to a company the same day. By that Friday I had an offer - for what a company that had recently been acquired by a f10 non software company.
2014 - emailed three recruiters.
Submitted my resume to 8 jobs.
Out of those 8, 7 phone screens,
2 - pay too low.
5 in person or scheduled for in person
1 - rejection
2 - offers
2 - cancelled in person.
I accepted an offer after four days looking.
16 applications all through external recruiters.
6 - Hiring on hold/position filled
7 - phone screens/either interview in person or I cancelled the in person.
2 - offers.
This was again within three weeks.
2018 - two applications, 1 offer in two weeks.
2020 - I was passively looking after a Covid related paycut. A recruiter from $BigTech emailed me about a remote position. The process from start to finish took two months, 1 technical phone screen and a 5 interview loop. This was for a cloud consulting position.
If it's a toss-up between two candidates, and one is a 20-something white male and the other is a 50-something black female, are you not permitted to hire the black female for the reason that it will make your team more diverse?
I was an engineer for years and then a recruiter before starting interviewing.io.
After having hosted ~60K mock interviews, I agree with one of the big takeaways here. Practice practice practice. It's not the same as working problems on your own. But after 5 or so, many of our users reach an inflection point.
As for cover letters and getting in the door in the first place, no one at large companies reads them. However, best thing you can do is find an engineer at that company and send them an earnest, short email about why you admire their work and why you want to be a part of it. Don't talk to recruiting... unless you fit a very narrow, specific mold, they're not incentivized to take risks.
If a mock interview averages 30 minutes from start to end, including the time to get on the call and take notes and give feedback, that's 30,000 hours of mock interviewing. Working 8 hours a day that's 3750 workdays, and with 261 working days a year that means you've done mock interviews full time for more than 14 years? Are the interviews super short? I feel like I'm missing something here.
She's the founder of interviewing.io, which is a mock interviewing platform. So I'm guessing her insight comes from looking at all the metrics (e.g. pass rate, strengths/weaknesses of candidates) from the mock interviews hosted on the platform.
That being said, I'm sure she has conducted her fair share of interviews.
Really great to the point article without any fluff. Lots of actionable insights.
The part about treating interviews as technical chats resonated the most with me and has been my personal experience as well - both as an interviewer and interviewee. If I'm going to hire you we are going to have such discussions every other week so its important how good we can collaborate.
I had the opposite experience a few years ago when applying for jobs for after I graduated. I stopped trying to learn about each company and stopped writing cover letters. Instead, I just wrote a 2 or 3 sentence, completely generic blurb about myself, then sent it with my resume to as many companies as I could find in the area I wanted and with the tech I wanted. Only when I heard back did I actually look in to the companies.
I think a key takeaway is that less is more. People don’t have time to read long cover letters and resumes. Keep it as short as possible but no shorter. Cut out everything that’s not your best selling points.
Surely the effort you put into 60 technical interviews are great. But instead, you should focus to 10 companies you would like to join, it may turn out better as you could focus your energy and thinking for cover letter and preparation.
Maybe? Doing more interviews probably helps prepare you for interviews to a certain degree. If he's shortchanging his interviews by doing so many of them--e.g. by not researching the company--that's one thing. But, in general, unless you're following a very targeted strategy, I'd probably err on the side of applying to more companies rather than fewer. If he's just applying cold, the process is sufficiently random that you're usually best off primarily playing a numbers game.
Probably the safest way to practice is to do interviewing at your current company. There's a lot of similar skills that you need to get good at to be good at interviewing others, and if you work at a good company, they'll want to train you and give you feedback on becoming good at interviewing others. You'll also get a much stronger understanding of what interviewers look for, how they evaluate, what a good interview looks like. So, once you're interviewing for a job yourself, you'll know how to recreate that same feeling.
I'm one of those people who apply like at two, three jobs and get offers from all of them. The phone screen is the most important IMO, that and a good recruiter.
People get all pissy about it and treat their recruiter poorly, which is highly unprofessional.
The biggest problem right now from the hiring viewpoint is that there are a lot of "senior engineers" with 2-3 years experience expecting a high salary, when you can easily find good remote programmers working in other countries who are not going to be asking that sort of money.
I think now that remote will become the rule, then it's an even bigger disadvantage for those who are looking only to code and that's it. What I think will happen more and more is that the only developer who will work inside the company is the lead developer, and the rest of the team will be all remote.
Soft skills are King.
Of course, you could go live abroad and work contracts. Not a bad life honestly. I think about it a lot these days. For those junior devs and mid level devs, highly recommend this, especially if your first language is English.
Depending on your sense of worth, it would be a better idea to just take a few months off entirely, rather than just grinding to get back to it.
One of the virtues in having been terminated a bunch of tomes is that I've had much more time off than anyone else I know, and while I have no idea what to do next, I know I'd be sad without that time off.
There has to be something seriously wrong with the tech industry if engineers are rewarded for spending more than 1/6 of the year learning a skill that is generally regarded to be unrelated to actual job performance. It cannot be completely bad in itself, but there must be some better way of organizing engineering labor.
> The interviewer isn’t there with you and so does not have the luxury of seeing other non-verbal cues like your hand gestures or nuances.
But they can still hear nuances in your voice, more than you might expect. Use a headset, don't hold your phone, and stand up when you are on the call. The movements you naturally make when not locked to a chair holding a phone against your head will come across as better emphasis in your voice.
I recently did a bunch of "virtual onsite" interviews, mostly over zoom. I think the main frustration I experienced was the barely perceptible latency in the video chat. It really bites when you start talking at the same time as the interviewer and have to do the awkward, "oh sorry, no, go ahead", "I was just going to say..." conversation-resetting sidebar.
I felt like video quality was good enough to see non-verbal cues, and I think people subconsciously exaggerate those anyway when they're talking over a lossy channel.
On the other hand, it was a lot more comfortable to be in my apartment than in an unfamiliar office space.
> Arrive early on the day of your interview and smile a lot (it helps portray confidence, but more importantly helps you stay relaxed and be in control).
I almost liked the 'smiling' advice... But on the second thought, it's very much personality specific. In my opinion, some people appear less convincing when they smile a lot. Also, you need to realize that interview is a meeting of strangers, so the other side is somewhat nervous too, thus allowing yourself to be nervous is ok, no shame.
As always, the best advice is know yourself and be yourself. Managing a pretense requires extra effort, better direct that energy towards the challenges.
Interview requires some luck (there're always factors beyond your control). No matter what the outcome, I'd consider it a success, if I managed to stay true to self and learned something new about people on the other side...or myself.
Btw, 60 interviews in 30 days... Any offers extended/accepted?
> I stopped seeing these in-mails as noise in my inbox and started making the effort to reply to all recruiter in-mails, even for positions I was not interested in. By doing this, I succeeded in building a network of recruiters that have become a rich resource if I have to switch roles in the future.
Recruiters are not your friends who'll help you out in time of need. My experience is that they don't even look at your profile unless you reply.
I'd wager a bet (and this is only my personal opinion) that if you lose your job for whatever reason, this will be a red flag to most of such "network" and when you need another job, they'll avoid you like the plague. An addendum to this wager would be that if you get hired by some high-prestige company (think Microsoft, Apple, Google, LinkedIn, ...), they'll swarm you trying to poach you for whatever you have open (so exactly when you don't need them).
Of course recruiters will help you in your time of need. If you need a job and they have a client with a matching opening , they will submit your resume and try their best to get you hired. That’s how they get paid.
In my experience they treat you the same and forward you to the companies they have at hands. Challenge here is that recruiters only work with a handful of companies that may or may not be hiring at that point in time (often they just want to collect resume from recruiters) so it's a crapshot.
It's mixed. Being laid off means you're available immediately and won't be too picky (unlike interviewing working people at well known companies), so it's good for the recruiter and the company, but there is a stigma with not having a job.
I wonder if this can be chalked up to lack of sufficient practice for the virtual type of "site visit" interviews that lead to nerves, decrease in the all important self-confidence. Or perhaps it has to do with the always troubling you can't look at the people in the eye with a standard laptop embedded-top-of-the-screen webcam because it looks like you are not looking at them.
I would read another blog post from the OP just about their virtual "site visit" interview experiences.
I found his bit about recruiter in-mails peculiar, but I suppose everyone's mileage may vary. I almost never respond to in-mails, but I have these last two weeks for some reason. I ask for more information before accepting a call, sometimes they oblige, sometimes not. I haven't received a response though to any polite inquires I've sent them.
One thing I didn't see in this post was whether or not the author was aiming for a job or a roll at a specific company. While it makes total sense to get as much experience as possible, I expected to read more about strategically ordering the interviews such that you hit the ones you want later in the process.
Those add up pretty fast if you're doing full on-site days. A couple of years ago I interviewed for two FAANGs. Along with phone screens, on site, and a couple of supplementary interviews, and then team selection interviews, it easily got to 18 or so. And that was just two companies.
I’ve only been put through the wringer like that once thankfully. I think I’m also lucky to have mostly made moves based on recommendations so end up dealing directly with specific teams at big companies.
Another hint on timed coding challenges: most of them involve array or string manipulation, you can do these much faster if you learn how to do them via functional programming in your favourite language
Job hunting advice and I know this will get downvoted.
When called for an interview, ask as a first question why they think you are a good candidate for the job. It is clear by my resume and elaborated by my cover letter, but you would be surprised how many people are thrown off guard by this. Why? They got your resume from HR and never bothered to look at it. This saves time. For you and for the company.
> "Know your unique competencies and experience and present them in a way that matches the company’s needs without sacrificing your personality.
It is also important to understand the peculiarity of the company you are applying to and its specific needs. A startup or a smaller-sized company may have different needs from a bigger company, thus requiring a different skill-set."
This makes the case for targeted CV more than adding a cover letter to a one size fits all CV.
Fwiw, my first page / section is titled: Executive Summary. It's more bulleted but it could be sentences. The idea is to incorporate the concept of cover letter without having to worry it would be ignored.
That said, I'm going to try a cover letter. It might be enough to standout even if no one actually reads it.
>"With every unsuccessful application, I saw that something needed to change.
That change came when I took a break from meeting my daily numbers and began to think of my applications differently. I began to see each application as a sales pitch to the hiring manager or whoever was going to be reading my application, but here the product being sold was me."
>"Backed with my resume, this cover letter had a 95% success rate. The one time this didn’t work, the hiring manager still replied to let me know that the position was no longer available but he would like to connect in the future."
>"It is also important to understand the peculiarity of the company you are applying to and its specific needs. A startup or a smaller-sized company may have different needs from a bigger company, thus requiring a different skill-set."
>"But hey, you are also an excellent professional, and that means you never get on a phone call without knowing at least these two things:
the first name of your interviewer, and
at least one tangible thing about the company — what they do, where they are located, any recent news, something, anything!
I noticed that for interviews where I put in the effort to make these findings, I always came across as being genuinely interested in the company. That’s something recruiters typically look for in these kinds of interviews."
>"Good candidates know how to solve a problem (e.g. a sorting problem), but the best candidates know multiple solutions to a problem and understand the trade-offs of one solution versus the other.
The interviews where I performed the best (Cruise comes to mind) are the ones where I didn’t just solve the algorithmic challenge – I was also able to provide alternative solutions and discuss the trade-offs.
Aim to provide multiple solutions to a problem, be willing to discuss the trade-offs, and be able to implement at least one of them."
>"One of the companies I interviewed with provided hourly pay, about $68/hr, for the number of hours you worked on their take-home project — it’s that serious, so you should be serious about it."
PDS: It's actually not "that serious" <g>. That's because from the company's perspective, they are spending ONLY $68 or so -- to screen out bad applicants for a position that might pay $120,000 a year or more. Which is quite the COST SAVINGS (again, from their perspective) if the wrong candidates can be weeded out at that stage of the game. There is no business on the face of the planet which would not pay $68 to save $120,000, and if there is, then they aren't going to be in business very long! So is it "serious"? To you the applicant, from your perspective, it appears so, but from a purely business perspective, it looks like a tax-deductible $68 expenditure to potentially save $120,000 or more in the future.
In other words -- don't let things like this phase you.
You'll do infinitely better if you're relaxed, yet conscientious.
>"I had three virtual on-site interviews and I didn’t pass any of them. Sorry I’m not your guy for this one, but I’ve shared some resources that I think you may find helpful below."
You nail these ones via an "appeal to everyone" / "offer something to everyone" social vibe mixed with the tech. It's what politicians do, or what people do who arrive at parties where they don't know anyone, yet by the end of the evening, everyone winds up liking them. Why? Because they showed they can handle multiple people with different understandings and possibly competing interests. You didn't nail this one because this "skill" -- is purely a social skill(!), it's not tech related -- the greatest computer scientist with 10 Ph.D.'s, hundreds of papers and patents, and a Turing Award -- if he didn't have this social skill -- would also have been rejected, so don't feel bad!
Now, on a different note, I wanted to add the following comment/suggestion to your great article:
Historically I have had a 2:1 ratio of of tech job interview : job offer.
In other words, historically, half of all of the companies that I have interviewed at, wanted to hire me after the interview.
One time, to understand this phenomena better, after being offered a job, I asked the interviewer,
"If you don't mind me asking, exactly why did you want to hire me?".
His answer was absolute pure common sense.
He said to me:
"All of the people that we interviewed told us everything that we would have to do for them.
You, on the other hand, told us everything that you would be willing to do for us."
> "Since your interviewer is a friend, a buddy, a team member who’s on your side and means well for you (Refer to 4), talk to them while you're figuring it out."
I strongly disagree with this. It is true in theory but doesn't work in practice. Most FAANG interviewers are looking for a fast optimal solution. Unless you are interviewing for very junior role, if you take hints from interviewer, it'll likely go against you.
It depends. It's better to get a candidate unstuck with a few hints and then not give them a perfect score, than just staring at them while they struggle then crash and burn and panic. Sometime a little hint is all it takes, and then you get to see a great solution you didn't expect, or awesome code, and the candidate still passes the bar - while not in flying colors.
The way I read this is that he simply encourages you to talk and share your thought process while solving the problem. If you are stuck, you will have to take hints anyway, but until then taking aloud helps the interviewer and might as well help you by forcing you to articulate your thoughts in a structured manner.
When interviewing people (non-technical roles, but roles heavy on problem solving) I always encourage them to share their thought process. Plenty people who I hired not because of the right solution, but because they convinced me that they can think creatively and in a structured manner (i.e., clarifying the problem statement, identifying things that are the most critical, ...)