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.
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.
"Generic cover letter" is an oxymoron. Cover letters are supposed to be individualized.
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.
This is an excellent point. A point that plenty of hiring outfits still don't get. They're so focused on their needs and their (self) importance that they forget who "the customer" is.
I do web dev. When I see this is marketing agencies I laugh (and don't apply). If you're a marketing agency and you don't understand who "the customer" is then you've got serious problems.
The rule applies elsewhere as well. It's a relationship. If you're process says "welcome all plebes" then that's exactly what you'll get.
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.
So under ConsultingCo, there was: 12, 13, 15, 21, 28, 34.
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.
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.
Why would you expect a dev have more languages listed? Many jobs involve only 1-2 languages, so why should they have more? (Assuming you don't list languages you've used for a project once years ago, which you're unlikely to have much relevant benefit in vs learning them fresh)
Correct, this is how all resumes work. Remember, nothing on the resume is verifiable apart from the dates and companies the candidate worked for, unless you do a phone screen or panel interview. So the resume selects the candidates suitable for the skills based interview. I know some people think the candidate needs to write "I am passionate about quality" or "I love collecting butterflies and have all of Nabokov's first editions" but those are primarily creative writing exercises that don't end up telling much that is reliable or reproducible across candidates.
> 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.
Correct, and one would understand that for someone with 10 years of experience it's not hard to pick up a new language, nor is language particularly important in this role. Neither is framework.
> I cannot tell even one thing that the person is particularly good at
No, you can't tell that from a resume, but you can tell what a person worked on (perhaps poorly). In this case, there is plenty of QA, webapp, and some security experience. This gives you avenues to drill down during the in person interview.
Remember, the only thing you know is true on a resume is the list of prior work experiences. Then you look for a collection of claimed skills. So when reviewing the resume you check whether the claimed skills match your needs and then drill down to verify the claims during the in person interview. That's pretty much all the info you can ever get.
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.
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.
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.
Small, scrappy startups will have the decision-maker doing the first-pass filtering. None of those people will be called "manager".
When going via external recruiters, you tend to know you're talking to a recruiter before you find out which company the job is with.
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.
If you value good spec writing then give them a spec-writing exercise.
I recently made a few technical blog posts to show examples of my writing, when job seeking...
> 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.
The need to stuff keywords while also providing a clean and small resume that actually says something interesting other than the keywords, is a difficult tension.
Do you have any evidence that the keywords present in a cover letter are taken into account though?
If the chance of making millions was 1/100, maybe I would try it. But it seems the real chance is 1/1000? Possibly even 1/5000?
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
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.
Edit: Another tip. If you are sending your CV in an email directly to the company, no need for cover letter. Your email is the cover letter.
Or do you go out of your way to find recruiting team’s email/phone number to hit them out of the system ?
I'm sure this varies a ton by industry and role.
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’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.)
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.
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.
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.
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.
It teaches me a lot about myself.
I'd rather have a conversation with someone who isn't HR, cover letters are mostly wasted effort.
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.
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.
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".
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?
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?
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.
> 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.
Also it’s scoping not scooping.
Don't forget to proofread your cover letter!
But I'm based in Germany, not the US.
The one exception is take homes exercises - sometimes I’m surprised but still that doesn’t usually flip the bit
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.
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.
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.
- Sincerely the guy who spells the company name wrong in his cover letters
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.
Their resume is sometimes doctored up to a point it half of it doesn’t make sense, or at least is inflating a lot their role and what they actually did.
Reading a cover letter in that light is only indicative of someone who can write cover letters. I never got to hire someone for that skill, so the value is through the floor to me.
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...
Worst case, there are a bundle more keywords for the ATS.
But that exaggerated importance that some say is recruiter FUD
They might not read the CL but it can still help.
It’s far easier for a recruiter to discard a resume because of unconscious bias than the allow it to interfere at the interview level
Check out the early Bill Gates resume from the 90s, he listed his weight and marital status and apparently that was like totally normal.
It's actually from the mid-70s, apparently.
I have a cover letter template I rewrite for each company.
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.
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.
What if someone has 25 years of experience and held 10 different positions during that time, has a lot of ceritifications and other credentials? How do you fit all that on just two pages?
"This guy seems really good, but he didn't rewrite his introduction for us. What do you think? Remove his interview?"
Like hell any company is going to do that.
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 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?
"I think that companies are extremely unlikely to forego interviewing a candidate that otherwise looks good because they had no cover letter."
My point is that the cover letter is one of the tools the applicant can use to highlight themselves as a good candidate. It could easily be the tipping point for getting an interview. It can give you some feeling for their communication skills, their understanding of the role / company / product. Though I concede most cover letters are not very well written, mostly generic. In the absence of a good cover letter, their resume alone must stand out.
Of course it could be a tricky situation: choosing between a candidate with a great cover letter and less obviously great resume vs a generic cover letter and more relevant experience listed on their resume.
Personally I would lean towards the better cover letter. They have given a clearer indication enthusiasm and interest in the job. A well written cover letter will explain how their experience is relevant, despite not superficially appearing so. This allows them to show insight into the role.
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.
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, 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.
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).
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.
* even if it's not a universal strategy
To be honest, I probably haven't really written one for a long time. But that's because my jobs for the past 20 years or so have come through sending emails to people I knew well.
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.
Similarly, as many have said, for an industry job, it depends on whether the company is small, medium or large.
That said if you have never worked a programmer job in your life, a cover letter won’t land you a senior web-dev role.
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.
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.
All of my opportunities came from inside referrals. It’s hard to imagine getting one any other way.
I mean yeah, a resume is involved — I fill one out — but it’s never been the reason for the opportunity.
Ah, I have a suspicion there are two types of engineers: those with FAANG on their resume, and those without. Perhaps that accounts for the disparity. :)
And all these jobs were in the last 7 years.
Resume submission does work. It’s not fun or great but for those who don’t have a great network, it is all you have.
Question here... I hope I’m not being a huge jerk here, but uh. Does this feel like this strategy is working well for you?
Did you like any of these positions?
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.
> It's the #1 way to pay progression, sadly
This has not been my experience.
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 ask people who date a lot about relationships, ask long term happily married couples about their habits
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 keep you happy 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.
Okay, I didn't get that one. Now what?
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.
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 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 completely unhinged.
And it is also, not what most of the good engineers I know actually do.
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.
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.
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.
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.
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.
Because I have an unhealthy obsession with shelter and food?
I don’t care about the company. I care about technologies used, how will it enhance my career for my next job, location, and salary.
Even in the same company different departments have different cultures. I also don’t blindly spam an ATS.
How would you know this without doing your research? You've proved my point.
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.
Hottest tip: seek advice from the people who landed a job.
Specifically? How they landed in their current role. As in anything, understanding what successful people do leads to... success.
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.
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.
But if I ask candidate to write any simple sort algorithm (like 2 nested for loop) and they can't do it, I'd be extremely worried.
I know you will never write sorting logic in work, but we have to evaluate something. Basic non-mind-bending coding problem seems justified.
Sometimes this is what the interviewer wants and sometimes its not.
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.
Also, you can find jobs without these stupid coding challenges and time consuming processes. I never worked in a company that asked me to write code before being hired.
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.
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, ...
Inevitably I end up taking the one that was just a short chat.
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
Now I have to resign myself to being questioned if I can program not matter how many years of experience I accumulated.
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.
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.
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.
But yes, for senior candidates, I'm doing a lot less coding and a lot more design and architecture, because that should be what they can offer differentiated from their less experienced peers. And I'm also going to be looking for their interviewing skills and philosophy, because they will probably end up doing more of the interviewing and thus team-building, not to mention the culture they set by all the juniors looking up to them.
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.
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.
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.
edit: plug time https://github.com/andreis/interview
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.
Sometimes I'm not really stressed before the interview, and that's when I realise I don't care that much about the job and probably shouldn't go further.
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.
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.
I have deep domain knowledge and context around the problem and am familiar with our frameworks and design patterns.
Something that seems trivial to me might not be for another qualified candidate.
General tech questions control for these variables more making it easier to judge those with more diverse tech backgrounds.
Rearranging slightly, into filter pass rates:
recruiter screens: 85%
technical phone screens: 72%
second tech screen: 21%
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.
> The point of a technical screen is to filter people out.
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.
So much interview advice is just awful and these “grind away mindlessly” narratives are actively nonsense that does not correlate to getting a well matched and awesome position.
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.
> 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.
I’ve failed plenty of times.
I’ve never failed a basic tech screen though...
They’re not supposed to be hard!
how are you defining hard? do you have an example?
i got this in my tech screen from a mid tier company in bay area
they were expecting a perfect solution because successful candidates in the past gave them a perfect solution.
do you consider that 'hard' in 45 min phone screen?
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'd like to offer to do a phone screen with you. I'll pick a hard problem I've solved on leetcode, codingame, or google foobar and see how you do on it.
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.
ok but how many tech screens have you done and with which companies? Statement is meaningless if without those details.
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?"
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 don't think thats particularly obvious; if a weak candidate is applying above their weight, I would think a resume/recruiter screen is just as likely to screen them out as a tech screen.
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.
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.
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.
Just a matter of doing more interviews and getting used to them. I got nervous even when conducting my first interview as the person on the other side of the table.
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.
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.
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.
As you said there are many other reasons that are taken into account.
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.
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.