Ask HN: Why is hiring so dehumanized, and what can be done?
Some of the pain points I observe are:
1. Applicants must wade through large volumes of job postings, which are often poorly written, and frequently lacking key information which is important to the applicant.
2. Employers are overwhelmed with large numbers of applicants, most of whom don't meet the requested minimum requirements.
3. Employers are then too overwhelmed to reply to all the applicants.
4. Applicants are then annoyed with the lack of replies.
5. By the time an employer finds a potential match, the applicant may be difficult to reach, or is no longer interested.
6. By the time an applicant hears back from an employer, they are disappointed in the quality of the response, and already have a bad impression of the employer.
What is working well today to address these pain points?
What are other Possible Fixes?
171 comments
[ 21.1 ms ] story [ 225 ms ] threadIn another startup, management asked every IC on hiring teams to find at least one potential candidates - every week. Time to find them was allocated into sprints. The referral bonus was raised from 2k to 3k.
The first example was more successful from what I remember.
Especially at a larger company where the hiring process can be a little obscured from the actual team. Where not every, or even most engineers on a team get to meet a new engineer before they're hired.
These systemic problems that are only tangential to actual work rarely occur but the common mitigations seem to put a lot of pressure on everyday man, maybe even more than the problem itself... I wonder what's the "correct" solution here.
This is, and has always been, a real problem: That your ability to get good positions is limited not by your skill set but by your ability to network.
2. The notion that companies will win purely due to skill is questionable. I would highly recommend listening to "How I Built This". Skill is a significant factor, but companies that win do not always do so based on skill.
Anecdotally, some of the best engineers I've worked with despise the networking culture and prefer to keep to themselves, while some of the most "social" and "networking" people were grifters who didn't have much skill, but knew how to appear like they do.
Not really. In my experience that is the exception rather than the rule. Especially because most people will have no way to know you have good skills if they don't already know you.
And I don't even mean racism - say your potential candidate is older with kids (assuming you're younger) would you pass them because they cannot go out drinking with you after work (a.k.a social circle)?
That said, I agree that you want to work with people you get along with, but it has to be at work. Social circle is the issue for me.
> Employers are overwhelmed with large numbers of applicants, most of whom don't meet the requested minimum requirements.
> Employers are then too overwhelmed to reply to all the applicants.
Employers should stop casting such a wide net, then. If you post on a site like monster and say the position is remote then obviously you're going to get a lot of applicants. If you're not prepared for that you should post locally or tailor your advertisement better.
IMO the job postings are often deliberately written that way because the people doing the hiring a) don't understand what they're looking for (see: "we need 10 years of experience in [technology that was released last year]) or b) they know they need a body but don't want to lock that person into a particular "role". It's just another version of "and other duties as required".
The remaining points in your OP can be solved when employers solve the problems in 1-3.
EDIT: Now that I think about it, I've often had companies who did interview me take weeks to initiate the process from when I applied.
What I do find negative (and unlikely to succeed anyway) is people shotgunning to roles that they aren’t remotely qualified for.
I think qualified applicants have a hard time believing the volume of utterly unqualified applicants who knock on the virtual door of every SWE opening.
They can fix it by actually posting minimum requirements.
How many Powerball tickets would you take if they cost $0?
https://news.ycombinator.com/item?id=34902201
I guarantee you that if your application process requires a cover letter, and will not proceed until you upload one, you will probably lose a fraction of applicants.
You can ask them to put the string "xyzzy" in the cover letter as a screening measure. This will almost certainly curtail the bulk of applicants.
The basic idea: Add enough friction to the application process so you'll get higher quality candidates. This is trivial to do.
The last thing I want is waste the other persons time.
It's disappointing being interviewed by people who are assh*les, really makes other people feel like sh!t!
1. Geo restriction (when required).
2. Skills required in the job (listed by employer). Any resume that don’t meet a percentage of required skills will be notified immediately after uploading the resume.
3. Filtering questions. That could be anything from skills, required certifications, ability to start in certain times.
It is an attempt though, I don’t know if it will work but to explain the reasons behind the platform:
1. The application rate of online jobs is less than 8% due to complicated long forms. Which means employers are missing many talented applicants. See this thread: https://news.ycombinator.com/item?id=33341263
To fix, I implemented an easy apply similar to LinkedIn. You only upload the resume, it will be parsed to validate skills.
2. With the remote work, there are companies who want to limit the remote to their own country or certain time zones. Writing that in the job description doesn’t stop people from applying. As you mentioned, ghosting is one of the main reasons why candidates apply to as many jobs as possible.
To fix, there will be a message saying the job is not available in your region when applying from outside the designated regions.
3. The skills filtering will help candidates to understand immediately why they had been rejected instead of just being ghosted. It will help in reducing the number of unqualified applications.
4. Filtering questions will be for things that can not be identified in resumes. That could be ability to relocation, having certain certifications, security clearance … etc.
Hiring is only going to get worse in technology related fields.
The competition has increased 10x in the last couple months compared to the last year for a single jr - mid developer position at my company. That's going from 1000 applications to 10,000 applications.
I even created a jupyterhub notebook to do some analysis on the unfiltered resumes over the weekend. I can easily see over half are liberals arts majors who switched careers in the last 5 years via bootcamps or masters programs. The next 25% are are mostly people who were laid off. The final 25% are new graduates with either no experience or an internships.
A lot more jr developers basically, I imagine the senior devs are being kept happy, or weren't laid off. Yet those are the only people a bunch of our tech teams want to hire . . . .
Also yes we filter out a lot of resumes using keywords, but the latest batches of interviews didn't go well. So I've been re-evaluating our processes.
(I do not believe this, but many do)
[EDIT] Incidentally, in the age of ChatGPT, I suspect I'm going to be recommending this more and more often for a lot more use-cases....
Unfortunately, you probably would have an adverse selection process. Anyone who can (or thinks they can) easily land a job will be F this crap. And the truly desperate will jump through the hoops.
I usually think that's the case when adding barriers, but I think it's also the case that the best devs aren't usually shotgunning résumés anyway, so if they really want to apply, it's not that big a deal.
Personally, I'd find "mail your résumé, with [name of role] on the envelope" less onerous than filling out the same fucking work-history shit that's already on my résumé on yet another form... for the dozenth time in a day. Hell, I bet I can have Kinkos or something do it for me for a couple bucks—print this PDF, mail it—if I don't want to do it myself.
It'd be less off-putting than "do this automatically-graded l33tcode exercise before we even look at your application", certainly. I'd actually find it encouraging that a human's likely to be the first one to see the document, without any gate-keeping in front of that, and knowing that the volume's likely to be much lower than all-online processes, so I'm less likely to just get lost in the pile.
Meanwhile, I think the desperate might skip it in the name of pursuing volume. Differs too much from normal procedures.
But, I might be wrong.
Only "apply" to jobs where you already know at least one person at the company
That's really the answer although it's probably not very actionable for a lot of more junior people.
Every single other job has come via connection
Like they used to do in 1970's.
Not a fan of: 1) Global pool of candidates 2) Leet code bullshit 3) Remote work
Fan of 1) Permanent hiree after 3 months of time with us. 2) You will be part of our family, we'll build great things together 3) You'll get a decision when you visit us. Just drop by, no appointment necessary. We'll make time. 4) If you get rejected, we’ll tell you in the most honest way possible. No HR bullshit talk.
I think the risk would be that no one ever shows up. :-(
The other one of those four just came to me directly through my network.
Now that I think about it, of the 7ish jobs I've held in about 23 years, I don't think a single one came from "fill out this online application form". I've done those, but it's never gotten me a job. Recruiters, responding to a very-basic listing on Craigslist that didn't involve some online form and was all-email, network, and just walking in. The "normal" process, not once, I don't think. But I also think the normal process takes a lot longer than any of my job searches have (longest was about a month? Most two weeks or less) to yield results, in most cases, so IDK, maybe it would eventually have worked for me.
I guess maybe the '00s are onion-on-my-belt-territory now, though.
[EDIT] Incidentally, I do think it helps to be fairly young when attempting this. Putting on my other-side-of-the-table hat, I'd probably be more likely to have positive feelings about a 24-year-old walking in like this and asking for some time, than a 34-year-old. 24 year old does it, "huh, interesting, they clearly have some amount of spirit or hunger to them, let's see what they're like, I can find a few minutes"; 34-year-old: "WTF are you doing?" I've not attempted it since crossing the 30-year-old barrier.
I was a hiring manager for 25 years. I hired experienced C++ engineers, for fairly hairy algorithm work (image processing pipelines).
Leetcode was absolutely worthless. There was no way to test for the stuff we did. The algorithms were nowhere to be found in most textbooks (they could be found in some textbooks that cost hundreds of dollars, though).
Also, our company was cheap. They offered "competitive" salaries. This probably reduced our candidate pool by 90%. We were a marquée imaging company (great to have on your résumé), so the only folks that applied, were fairly serious about the job.
I had to filter for folks that had the basic tech chops to get into our codebase, and also had the ability to learn the stuff we did.
It was challenging.
Also, once we hired someone, Japan wouldn't even acknowledge their existence, until they'd been on the team for at least a year. Training them on our algorithms was also a multi-year process, so I hired for the "long haul," and keeping people for many years was important.
I didn't look for people that would work crazy hours, but I wanted folks that would be dedicated enough to the job, that they would be conscientious in their work, and put in extra time, if needed (which I was careful not to do too often).
I looked for folks that I thought could work in an extremely diverse team; spread throughout the world, and that were capable of treating their teammates with respect; not competition.
I did OK. Never had a technical bomb, but I did make a couple of mistakes, when it came to folks that could integrate into the team. They generally found it uncomfortable, and went their way, but that still hurt, because of all the time we had to invest.
All very old-fashioned stuff, and probably not representative of most of today's companies.
I will say, that, towards the end of my tenure, there, the HR started to get really rapacious. They were run by the Corporate General Counsel, and tended to treat the employees as threats. Shielding my team from them was pretty important, and it meant that I was occasionally called on the carpet.
> 1) Global pool of candidates
Why not? global pool could potentially get you a lot more bang for your buck. I've employed folks from outside the US and it was a joy to get really talented folks and pay them stupidly well for their location. They were super excited to work with us for that and we were super excited to pay them a lower rate than hiring in the US. Win-win.
> 3) Remote work
Why not?
> 1) Permanent hiree after 3 months of time with us.
I think this works well on paper, but not so much in practice. I wouldn't be interested in wasting 3 months of time (even if I'm paid) just to find myself back in the job hunt process again. I can't imagine on a large enough or complex enough project that three months would be sufficient to be measurably productive. I'd rather use that time to find a longer-term place that is a better fit for me. This is just me though.
> 2) You will be part of our family, we'll build great things together
Oof, no thanks. I'm exchanging my time and experience for money. I don't need additional weird social hierarchy or hidden rules about behavior (not to mention the passive exploitation).
> 3) You'll get a decision when you visit us. Just drop by, no appointment necessary. We'll make time.
Gosh, as an employee there, this would signal to me that I might be expected to be interrupted and context-switch to an off-the-street interview. That doesn't sound like fun.
> 4) If you get rejected, we’ll tell you in the most honest way possible. No HR bullshit talk.
Sometimes that "HR bullshit talk" is to protect you and your company from lawsuits. Honesty combined with "HR bullshit" is possible and not mutually exclusive.
----
On another note, I appreciate such visible signals that I would not be a good candidate for your company.
I'm fine with the former. Mostly wouldn't be with the latter.
Requiring someone to drop off a resume reduces friction and frustration--I can give you my resume that tells you everything, and I don't have to write it again into your weird HR software that requires me to set up an account for a job I probably won't get.
It gives you a chance to do a short prescreen as soon as the applicant drops off their resume, giving instant feedback to them.
Honestly, although that culture isn't what I'm looking for now, when I was starting out, I would have loved to see somewhere like this near me.
Treating business like a part of the family is a bad idea. You will end up with nepotism in the organization and shun out new ideas. Yet some real businesses embrace this mantra and bad things have been happening.
I think this is where small companies really have a huge advantage over larger companies, and they should be taking advantage of it!
Employers at first communicate with the guild and only have to evaluate 5-10 candidates. All interviewed candidates pool their knowledge about the employer so the next suggestions from the guild will be even better matches.
Medieval guilds made sure that craftsmen could be trusted. Programmers can do the same thing.
I also have some concerns about how you manage problems as this sort of guild scales. How do you keep a consistent standard of skill? what if members performance changes over time?
To join, one must have some amount of professional experience and pass a test. Members pay some nominal fee to support an internal liaison team. That team communicates with with companies looking to hire. Create some sort of internal ranking metric (which includes filters for e.g. location and pay), and top ranked members will be connected directly with HR at the company.
This is basically what H1B sourcing companies do. No reason it can’t be for full time as well.
They get paid a lot for finding a candidate so their incentives are a lot more aligned with your own. You can openly ask about salary and timelines. They're not gonna waste your time or theirs if they know you require X while the employer is willing to pay a lot less.
They also work across different orgs so they can place you accordingly. They can even help you prep for an interview and work with only serious employers (they don't get paid unless you get hired). It's very reputational. Some workers use the same headhunter their whole careers. Plus it's very industry specific so it's more personalized. Head hunters for hedge fund jobs will be very different than those for IT departments for law firms.
It's not perfect but it's decentralized and you can choose the head hunter you want to work with as opposed to being stuck in an industry with a bad guilde. It's not perfect and you still have to jump through hoops but i think that's unavoidable
> Employers at first communicate with the guild and only have to evaluate 5-10 candidates.
Yeah, no. It's not friendly when there's an obvious hierarchy and competition for jobs involving large amounts of money. And who decides the criteria? How are other developers even supposed to "rate" you if they haven't worked with you?
Putting all software engineering hiring in the hands of one central authority is one of the worst ideas ever. It's good when different employers have different hiring criteria. What sucks is when a bunch of employers cargo cult on the same hiring methods. We need more diversity in hiring, not less.
Guilds already exit as networks of friends who recommend each other. Hiring is only dehumanizing for those who are not part of an informal network. With guilds, there could be accessible knowledge to everybody on how to be or become a good professional.
The fact that programmers haven't already organized themselves in guilds suggests that they are not the right layer of abstraction. It remains funny that programmers create formal processes and structures for everything but not for themselves.
But that totally undermines the central premise:
> Employers at first communicate with the guild and only have to evaluate 5-10 candidates.
For employers, there's no reason or advantage to deal with the guilds rather than directly with job candidates when there are a bunch of competing guilds with their own criteria.
And if guilds aren't providing/gatekeeping access to employers, then why would job candidates join them?
We might be close to developing that model, or we might not. I personally don't know that we need to rush there. I'm of the auto-didactic hustler crop of hacker/engineers and many of us wouldn't have fared well if there was already a strong guild culture as we were coming up. I'm not sure I'm ready to start building that wall behind me yet.
The main benefit of our current system is that it's very equitable. I'm the furthest thing from an SJW, but I do believe that in essence, the current way we interview helps people at the lower rungs of the ladder. People with no CS background can learn and if they pass the test, they can work at a FAANG. There's no guild, there's no politics, there's just performance on a well-defined measure.
It's not the greatest system, but it's also extremely fair and gives a shot to people who wouldn't normally get a shot.
I also try to make small talk, have a quick conversation and so on. This has been mostly good except with a couple candidates. They were hasty and basically like ok let’s get to the question
It’s so interesting how groomed candidates are with LeetCode and Sys Design videos. Sometimes when I ask anything off course, like a basic question, it’s like a huge curve ball for some people
They didn't work 20 years ago, still don't work, however interviewing someone like they're a person, asking questions, finding their passion, that has had 100% return for me and my companies.
Word of mouth has been the best way I've been able to hire a lot of really skilled people. My team members have told me many times that I'm the best manager they've ever had.
It's because I don't do anything the way you're supposed to.
Try being a place worth working for and you'll see skilled people show up, and they know how to get ahold of you since they're highly skilled and motivated.
If you're a small company who has tapped out their current team's referral network, how do you get out the word that you're a good place to work, and how would people find out that you're a good place to work?
One thing I might do is have a blog which had genuinely interesting content that's both related to what the company does and working there.
He left to talk to the owner, came back with a (in hindsight very small) number on piece of paper, and I started that week.
When I started at my current gig over a decade ago I had a three-day ordeal of interviews. In person, telephone, full day of in person again. Spoke with at least six different sets of people. Jobs I've applied for in the interim have been even worse.
As someone who has been in a hiring position myself, I think that first informal interview tells you way more than any checklist. If you need the checklist items answered, put them on the application. Interviews should be for getting to know the person.
I don't do hiring these days, but from what I've heard, DEI doesn't want us going off pre-approved script at all. I understand where that's coming from but it seems like it would do more harm than good.
These kinds of processes just feel designed to dilute the blame.
When I was responsible for hiring at my previous project, that's also what I did: I want to get to know the person. Is this someone I can work with? I was much more interested in what their most interesting project was, than in which checkboxes they checked. If there was one checkbox I had, it was: "can they admit they don't know something?" because some people just started spewing nonsense if they didn't know the answer to a question.
I work for a startup that is selling a CRM to addresses all of those pain points. We have many large customers and were recently valued >1B.
We have several competitors that make the same sort of thing.
The point at when our product makes sense cost wise is apparently 8+ recruiters so that certainly excludes a large number of smaller companies.
The solutions range from boring (e.g. CRUD things, advanced search, campaign management) to fancy (e.g. automation, AI things).
Our approach is basically to reduce / automate as much as possible to free up as much time for the recruiter to do actual human things.
Apparently it's very common for applicants to just spam their resume out to every employer, since there's no cost to do so.
If it were standard practice to implement some kind of hurdle, so that the applicant would have to spend an hour of their time to get a resume in front of a human, then there would be a lot less resumes to sift through and therefore a lot more time that could be given to each one by the employer.
Another commenter mentioned having to drop off resumes in person, but I suspect something as simple as this could have a huge impact on spam.
I was involved in one phase of picking submittals for a conference recently and there were no small number of submittals where basically one person sent in a half-dozen or more generic submissions, possibly with a sentence tacked on to make it relevant to this specific conference.
I'm a big fan of conferences limiting the number of submittals or at least throwing enough hoops in the way of shotgunning a bunch of generic proposals to discourage the practice.
(Basically, more submittals mean that the conference committee is going to end up being more random evaluating submittals against each other.)
Let me introduce you to my little friend: the leetcode quiz.
> 1. Applicants must wade through large volumes of job postings, which are often poorly written, and frequently lacking key information which is important to the applicant.
This is nothing new - it's been this way for over 20 years. Job postings are not more poorly written than in the past.
> 2. Employers are overwhelmed with large numbers of applicants, most of whom don't meet the requested minimum requirements.
Because many/most employers are willing to hire people who don't meet the minimum requirements. Or rather, they are sloppy when they made the job posting. Therefore, applicants who actually honor the minimum requirements are at a disadvantage.
> 3. Employers are then too overwhelmed to reply to all the applicants.
Same reason as above. Employers got themselves into this mess because they are not strict with their minimum requirements.
I don't have solutions for the whole system, but a given employer can do much to improve things:
1. Employer posts accurate postings and are strict about minimum requirements. Applicants who submit applications where they clearly are not meeting the requirements are blacklisted for a year (make this clear up front).
2. Do not let people apply to more than 3 positions at once.
3. Require a proper cover letter.
4. Develop a reputation for good candidate management. If someone applies, they should hear from you in a decent timeframe (even if it is a simple rejection).
5. Write in reasonable detail about the interview process. Will it involve Leetcode style questions? Etc.
Most applicants will just not apply to you, but that's fine. The key to making it work is step 4. As an example, I almost never include a cover letter, because it consumes a lot of my time, and I discovered that over 90% of openings that have an option for a cover letter never read them. If I'm submitting a cover letter, I want a strong commitment that it will be read.
If you're actually going to reject someone for having a bad cover letter, does that not heavily bias against people who aren't as proficient in your chosen language?
> If you're actually going to reject someone for having a bad cover letter, does that not heavily bias against people who aren't as proficient in your chosen language?
Then get ChatGPT or a friend to write it? :-)
When I say "proper", I don't mean "good grammar", but things like why you think you'd be a good candidate. Why does this job appeal to you[1]? Etc.
[1] I personally don't like this one as much,
Is part of being a good employee faking that you're probably at least primarily there because they're making sure you can pay your bills? Sure, I'd rather work somewhere interesting than not, but writing a nice cover letter about how I'm interested in your project and mission goes out the door pretty quick when you come back with how you want to pay me 60k under market rate.
I'm not exactly anti cover letter, but it feels like writing a dating profile. It's me putting on a bit of a guise and obscuring at least part of my true motives. Everyone involved should understand that or is hopelessly naive, but then what signal do you get from it? That I care enough to dissemble effectively to you? That you think I'm as interested in your company as you're going to tell me all about how you'll treat me like family?
For a lot, if not most, programmers, there are other ways of making a living. If you are of the mindset that there aren't, I may have some roles for you, but they would not be growth roles and some may feel exploitative, but they are not because there are no shortage of engineers who are happy with such roles.
You picked SW development over other viable options for a reason.
> and my background is "I do computer things so I'm not homeless and starving".
The ask is what, not why. My background is that I am an engineering guy (non-CS), who pivoted at some point to SW. Your background may be different. If you've got 10 years at various companies, you do have a background other than "I do computer things".
But to get to your sentiment: Yes, we all know we're all trying to make a living. The cover letter is an opportunity to speak to why this job and not any other job. If you don't have a reason, that's fine. Over 90% of the times I do not either. But that means I and you are as guilty of contributing to the "problem" of this submission as employers are. More importantly, if I know the employer is going to be fussy about this, I will save us both time by not applying.
As an employer, if I get enough who do have a convincing reason, they get to the top of the pile. If I don't get enough cover letters to find a candidate, I'll loosen my requirements.
It is a bit like a dating profile, but so is the resume, so you can't avoid it. And speaking of dating, what would you think of a partner who says "I just want someone to have sex with, who'll pay for my expenses and let me not work (so should earn good money), and will take care of the children while also taking me to expensive restaurants. I really don't care about his personality."
> but then what signal do you get from it? That I care enough to dissemble effectively to you? That you think I'm as interested in your company as you're going to tell me all about how you'll treat me like family?
I think you're reading way too much into this. If you wrote a nice little script to solve an annoying problem at work that everyone was neglecting, it could be quite appropriate to put that in the cover letter. In 2011/2012 I independently learned pandas and spread organically to my team members such that the majority stopped writing annoying JMP scripts, that could go in the cover letter if I'm applying to a company that does numerical work. There just isn't room in the resume to highlight these kinds of things.
Of course, if you have nothing like that to show for yourself after N years in the industry, that's OK, but it makes you the same as every other applicant who doesn't.
I was certainly being a bit overly cynical with a lot of what you're replying to, but I think a lot of that is driven by not earnestly believing that most companies are as earnest and caring about this as you seem to be. I can write an earnest cover letter about what I love about computing and my job, and what I want to do, and how a new role I'm applying to excites me and speaks to what I find interesting about this sort of job. I've even done that 3-4 times in the last year. And you know what?
I got literally not even a rejection letter from any of the places I put at least half an hour of me spilling my soul and passions into a cover letter for.
I literally think I've had a worse track record of getting a first round interview when I provided a cover letter than when I didn't. Small sample size for sure, but I'm actually unsure I've ever had a cover letter even get acknowledged, let alone get me in the door.
To turn your analogy, most companies and job postings feel like them saying "I'll buy you nice dinners, take care of your kids, and cover your expenses as long as you have sex with me." And honestly, at some point, I've been mostly beaten down to the point where that sounds good, because the companies that promise me they care about me and want to learn about my interests and go on a nice date with me don't even acknowledge my existence when I send them a love letter.
I've been curious about this recently, and have been asking around my network, and I actually don't think anyone I've worked with who's done interviewing for their company has ever even seen a cover letter as part of an interview packet. You seem to work somewhere that cares and would actually read and process them, but if so, you really need to make it clear that it actually matters, because at this point, I've had too many companies even require a cover letter and then seemingly care less about treating me like a person than I treated their job as something I could be passionate about.
If it is to work, the employer must require it, and must make some (verifiable) commitment that they read it.
> I've been curious about this recently, and have been asking around my network, and I actually don't think anyone I've worked with who's done interviewing for their company has ever even seen a cover letter as part of an interview packet.
If you read my comment, that's been my experience as well. I provide it, and if I get a call, I ask "Did you read the cover letter?"
"Oh, you sent a cover letter?"
> Because many/most employers are willing to hire people who don't meet the minimum requirements. Or rather, they are sloppy when they made the job posting. Therefore, applicants who actually honor the minimum requirements are at a disadvantage.
Seriously—treat "requirements" as "a wishlist" is basically job hunting 101—because it works. Sucks for the employers who really, super-duper mean it when they write "requirements", but that's not most of them.
> 5. Write in reasonable detail about the interview process. Will it involve Leetcode style questions? Etc.
I swear to god, some companies protect this stuff like it's a state secret. I promise you that making details of your process public, or at least sharing them with applicants on first contact, won't ruin it. If FAANG can practically provide a study guide and get by, I'm pretty sure Jim Bob's House of Software or Boring Business Bank Incorporated isn't going to be ruined by providing a schedule and some guidance on the kind, difficulty, and broad domain of any technical assessments that will be performed. Meanwhile, leaving candidates with no clue what to expect when the real-world range of what happens in these interviews is unreasonably enormous, is simply shitty.
It was basically explaining my passion for a cross-industry move. But for most people for most jobs, most of the time, a job is just a somewhat match for their skillset and there isn't much else to say. Now I'm hiring I don't pay much credence to cover letters or objective statements, but they can still be meaningful for certain people's circumstances. I think cover letters have a bad rep because a generic one is meaningless.
Human's are complex social beings and each individual has a unique set of strengths and talents. However, this complexity is incompatible with how the labor market works. Specifically it's incompatible with how labor is commodified.
Let's use a tech parallel to explain how labor is treated as a commodity. Take Docker for instance. Docker commodifies applications by wrapping them in a uniform interface. The whole point is that packaging up the whole app into a standardized container makes it easier to work with. You don't have to care about the internal complexity of the application, you interact with all Docker containers the same way.
Commodification of goods goes hand in hand with the mass production of goods and the ability for markets to function. Think of commodity markets as an example. Oil is traded in barrels, a standardized container for oil, and at regulated grades. This makes buyers confident that they are getting what they're paying for when they buy oil. One barrel of sweet crude is just as good as any other barrel of sweet crude. We trade commodities as a means to an end.
The problem happens when we do the same to people. The debasement we feel during the hiring process is due to how people are treated as a commodity. Take the resume as an example. The resume is an abstraction of you as a person. It helps HR and hiring managers sort through candidates because of the way it abstracts labor. But at the same time, it reduces a person to a list of bullet points on a page or two at most. There is a stark contrast between the whole person as a living breathing human being and a list of bullet points. Some people find being treated as a means to and end humiliating.
I think by now you can choose others parts of the hiring process and use this lens to see in which ways people are treated as commodities.
I expect to get reactions along the spectrum from "that's the dumbest thing I've ever heard. Of course that's how it works!" to "Huh, I never thought of it that way before." Both are fine. I've heard it all.
While I think your analogy is more or less accurate, I think any reasonable economist/person could interpret whether hiring standardization is good or bad.
For instance, it’s very easy to interpret a standardization of practices as making the labor market more efficient as most people will know exactly what to expect, more or less, in the process. So they can study or prepare for a job and apply to a multitude of places. Someone could probably write a paper on how standardization of hiring processes has ultimately led to more people hired more, from a more diverse number of places and cultures, than it ever had in the past.
And of course another person could find issues in this for sure.
I end up feeling there are trade-offs with both and certainly processes can be improved. But I think that’s a more micro problem. Like most places don’t in actuality do the exact same hiring process so you can’t really paint with too broad a brush. At least in tech.
But standardization is actually a pretty amazing phenomenon and it can’t be understated how much it equalizes many areas of economies.
On the other hand, I’ll also point out it can disenfranchise those who wouldn’t do well in that standardized process. I’ve felt this in my own life with grad school entry processes. Unless you are the very very best on paper, the top schools ignore you. That’s been utterly dehumanizing and makes me very unhappy. So I really do feel it.
But again, pros and cons. Anyway, thanks for posting this.
So my suggestion would be: think about people you know or could meet and ask them if they like where they work? Are they hiring? Then, if you have a position somewhere you don't need to be perfect, but it helps to be memorable.
The coding questions at both places were not anything I had seen before (despite studying on leetcode), however none of them needed any esoteric tricks or algorithms. Recursion, loops, hashmaps, lists, etc was all that was needed to pass the coding portions.
I'd say the questions would be considered 'hard' on leetcode, but still only needing fundamental understanding of DS&A. And I was given about 40 minutes.
I also had some coding rounds that were 100% practical stuff. Basic 'data munging' kind of stuff. It was non trivial but again nothing weird or funky.
System design rounds were practical and engaging and fun.
I think the template is pretty solid, it's just most places have poor implementation (and from what I've heard, it's very possible to roll poorly at Google and get someone who asks a super weird or challenging question).
When I first started studying for interviews, I would absolutely panic with someone watching me, I could barely do a proper for loop. But after enough practice it became fine.
Overall the interviews were challenging but NOT what I was expecting, I thought they did a good job of asking unseen questions that tested coding fundamentals.
The absolutely grueling, pointless, insane interviews processes are the lion's share of problems in this field. To the point that its an industry of its own, with Leetcode and the likes. Its pathetic, inefficient and just in terrible taste.
1) I wonder if the problem of being overwhelmed by applicants can be solved in the same way that dating sites work, because they somewhat have a similar issue. Perhaps restrict job seekers from applying to more than X jobs per day or week, like some dating sites do. At the least, this ensures that effort is put into individual applications and people are more selective about applying to jobs they think they have a reasonable chance to get rather than applying to anything they're remotely qualified for and playing a numbers game. Everybody will be applying to fewer jobs and can be more conscientious about the process, improving it for all.
2) And speaking of minimum requirements, in most cases they're not strict absolutes for performing the job. If you're going for some hard-core game developer job and you don't know C++, yeah that might be a big problem. But if you're going for a web-developer job and you haven't used one of 6 Ruby gems they listed in their ad, who gives a fuck? You should still apply because you're experienced enough to know that your general knowledge is in the ballpark of what they're really looking for.
You don’t have to be the best sports player to be a great sports coach. You don’t have to be the best programmer to be a great engineering manager. The problem is that companies have not decided it cost effective to pay more for recruiters that know how to code or even have a CS degree.
This said, I think AI, ChatGPT/LLMs, and probabilistic models can make inferences about skill transferability. Interacting with ChatGPT could effectively become a fizzbuzz programming interview. Potentially, we can have the AI randomly remove a line of code from otherwise correct code, and interacts with the interviewee to debug what’s wrong with the code.