Skip to content(if available)orjump to list(if available)

You're Not Interviewing for the Job. You're Auditioning for the Job Title

solotronics

It's been 10 years since I did an interview and I think I would rather retire and grow rare lizards than jump through the interview hoops at a new company. I am 90% sure I couldn't pass the interview for my current position but I'm the one who designed the whole thing. -staff level backend engineer

lastdong

I haven't interviewed for a job in many years, but on a whim, I decided to pursue a new role. I made it to the final interview with senior executives and was expectedly grilled about my qualifications. During the interview, I described several projects I worked on from start to finish, covering all stages such as gathering requirements and architecture. However, I received feedback that it seemed I had taken on too much responsibility, making them unsure of how much I actually contributed. Yes, totally agreed.

jiveturkey

That was just the stated feedback. They just didn't like you, and found a reason not to. This effect is well studied.

The better you understand this, the more it won't make a difference, sadly. At least you can get through the rest of the week though.

wccrawford

I was 14 years in a job at senior level and got laid off.

And yeah, it's pretty much as bad as you describe.

benoau

Yep. I didn't even "pass" some of the coding challenges despite hiring, firing, and writing coding challenges myself!

What I often saw was many of those jobs were sitting on the market for months and months just getting relisted every few weeks. The ones that actually led to interviews, I had one dipshit proudly tell me about his 2-hour commute five days a week. Another told me they wanted to vomit-out mini-MVPs and were replacing the new guy who wasn't doing it fast enough. Just an ocean of fake jobs and awful jobs lol.

dhosek

I had a coding challenge where if you didn’t implement what was essentially a Set in the exact way that they expected, you couldn’t proceed since the evaluation assumed you’d match their ordering (which was arbitrary). One of those automated test things and there was no way to contact a human and say, your process is broken. I’m eagerly counting down the days until I can retire. Between broken hiring processes and the rise of LLM coding, I’m left wondering if this is how I want to spend my precious time.

influx

[flagged]

Taylor_OD

Why did you design it that way then? Actually asking, not taking the piss.

ruszki

There is a difference between knowing how to find and use the ordered list of complexities for big O notation, and knowing these by heart. The difference is irrelevant when you design or code, but it’s important for interviews and exams.

TrackerFF

It is the natural result of an industry where:

- There are low barriers to entry (education is not required, profession licences is not a thing, etc.)

- A strong culture of "job hopping" has emerged, which means companies are continuously interviewing candidates, and candidates are continuously looking for jobs.

- A big willingness to sacrifice the false positives, for the sake of keeping out the false negatives. Basically companies will increase the threshold/bar to keep out the "fakers" and bad hires, even if it means rejecting legitimate hires. The mantra that it is very expensive to hire the wrong people rings throughout the industry, and has for the past decades.

- Candidates are willing to play the game. Some people are willing to grind leetcode questions for months, years, if it means they get a shot at big tech companies. Smaller companies cargo cult.

JustExAWS

In the past 10 years and I was already 40 years old in 2014, I’ve interviewed:

- at a company where they launched a new division in a satellite office in another city to separate the team from the old guard to create a “tiger team” of experienced developers. I was the second hire. I just spoke to the manager as an experienced professional and we talked about how I solved real world problems

- a new to the company director who needed a lead software engineer to integrate systems of acquisitions that the PE owner was buying.

- the new to the company CTO after the founders found product market fit and wanted to bring technology leadership into the company from a third party consulting company. I was eventually tasked with making everything cloud native, scalable, resilient etc. I was his second technical hire. Our customers were large health care companies where one new contract could bring in 10K new users and even more ETL integrations. He knew I didn’t have any practical AWS experience. He later told me I seemed like a smart guy and I could figure it out.

- AWS itself in the ProServe division - 5 round behavioral interview where I walked through my implementations.

- (2024) third party cloud consulting company in a staff role. They asked how would I architect something and I made sure I hit all of the “pillars” of AWS Well Architected and talked through 12 Factor Apps.

I’m 51 and I stay interview ready. My resume and my career documents are updated quarterly and I keep my network warm.

I believe right now if I were looking for a job, someone would hire me quickly if not for a permanent position, at least I could hustle up on a contract.

ajmurmann

I've been interviewing the last few months after having had the same leadership role for 7+ years and never really having interviewed before. Your point about maintaining interview-readiness is something everyone should tattoo on their arm. I wish I had kept a log of accomplishments, projects with associated tradeoffs, anecdotes, etc. I've been polishing my interview responses and sometimes I remember something I had done that would have been great to bring up in an interview but I hadn't thought about in years.

JustExAWS

And to add on - not directed at you more to other people where this isn’t crystal clear - neither you nor I said to be “interview ready” means “grinding leetcode so you can reverse a btree on the whiteboard”.

You and I are both basically referring to being able to describe accomplishments, challenges, and results in STAR format.

lovich

Do you think you’re a productive and valuable employee with marketable skills?

If the answer was yes, why do you think we’re in a situation where you need to dedicate that much of your own free time, sans compensation, just to make yourself attractive to companies so you can at best fall back on temporary employment?

I do not mean to attack you personally, but your comment is incredibly black pilling and dystopian to me. It’s seems like every year we are going to be asked to do more, get culled if we don’t, and half of the commentary from our community is about how you can avoid the yearly culling by working even harder.

JustExAWS

Who said anything about working harder?

https://news.ycombinator.com/item?id=45089377

The company gets a simple deal from me. They put the amount of money in my account they agreed to every month and in return they get 40-45 hours a week from me and all of my experience and skills.

They want me to fly out to a customer’s site or sit on a zoom call to close a deal? They got me. They want me to lead a large cloud implementation? No problem. They want a 50+ page management consulting style assessment with pretty diagrams? Say the word. They have a customer with an empty AWS account and they want someone who can do AWS architecture from the “DevOps” [sic] perspective and development? Say the word.

What they don’t get from me is burnout, time away from my wife and exercise in the evening, weekends or on call work. They get 40-45 hours of work from me.

It doesn’t take that much time to write down a summary of what you accomplished every quarter and keep an updated resume and in my case go on LinkedIn and post a banal “thought leadership” bullshit post once a quarter to keep me on the top of people’s mind if things go sideways at my current employer.

I would much rather be in my position where interviewing means some behavioral questions and talking to people than having to grind leetcode and reverse a btree on the whiteboard.

Daishiman

> If the answer was yes, why do you think we’re in a situation where you need to dedicate that much of your own free time, sans compensation, just to make yourself attractive to companies so you can at best fall back on temporary employment?

Do you think good products just sell themselves? Do you think marketing departments exist because companies love to waste money? There's your answer.

sfn42

How are employers supposed to know you're productive and valuable if you won't even maintain a decent resume?

Honestly you come off as whiny and entitled, everyone has to present themselves through a CV. If you want to stand out you need to put some work into it.

I work as a consultant/contractor, so I am actively encouraged to polish my resume during work hours. You could look into the same if you also want to be paid to polish your resume. I don't see why other kinds of employers would want you to work on it, the only thing you could use it for would be to leave them.

neilv

> This isn't malicious. It's structural, driven by several interconnected forces:

An additional reason is religion. People were told that these are the interview rituals you should do, they spent a lot of time rehearsing for it (to the exclusion of learning or doing useful things), and they think everyone should have to do it, or they are bad people.

An additional reason is that some people don't know much about the field, other than particular interview rituals.

An additional reason is that most people who know how to do their jobs, still don't know how to interview, so just mimic what they've seen.

An additional reason is justifying your existence/status. Sometimes, when I see a job description with requirements seemingly puffed up to sound impressive, I get the impression that it's not by someone who doesn't understand the role, but rather by someone who wants to make the role look impressive to their boss, for their own status or that of their team. Similar with interview practices.

An additional reason is frat hazing, for the sake of frat hazing. When easy upper-middle-class money entered the field, it attracted some baggery.

Not all organizations or interviewers have all the above reasons, but you can probably guess at least one of these is at play any time you get an ineffective/counterproductive interview "loop".

stephenpontes

I had almost this exact interview experience recently with a popular AI startup. The exercise was to build a search UI over a static array of dictionary terms. It was a frontend role so I wired it up with filter and startsWith and spent more time polishing the UI and UX.

The final interview question was: “Okay, how do you make this more performant?” My answer was two-tiered:

- Short term: debounce input, cache results.

- Long term: use Algolia / Elastic, or collaborate with a backend engineer to index the data properly.

I got rejected anyway (even with a referral). Which drove home OP's point: I wasn't being judged on problem solving, but auditioning for the "senior eng" title.

With candidate interview tools and coding aids increasingly hard to detect in interviews, this gap between interview performance and delivering in the role is only going to widen. Curious how many of these "AI-assisted hires" will start hitting walls once they're outside of the interview sandbox.

rahimnathwani

In general:

- At a large tech company, a referral can help you get an interview; it rarely affects the actual hiring decision or the offer.

- As an interviewee, I might feel like I did great, but I don’t know what signal the interviewer wanted or what their bar is for that level.

My son’s school uses an adaptive test three times per year (MAP Growth). It’s designed so each student answers about 50% of the math questions correctly. Most students walk out with a similar perception of:

- how hard the test was, and

- how well they did.

Those perceptions aren’t strongly related to differences in their actual performance.

Interviews are similar. A good interviewer keeps raising the difficulty and probing until you hit an edge. Strong candidates often leave feeling 50/50. So “I crushed it” (or “that was brutal”) isn’t a reliable predictor of the outcome. What matters are the specific signals they were measuring for that role and level, which may not be obvious from the outside, especially when the exercise is intentionally simple.

Many years ago, when I interviewed at an investment bank for a structuring role, I answered all of their questions correctly, even though some of them were about things I'd never heard of (like a 'swaption'). I answered at what I thought was a reasonable pace, and only for one or two questions did I need a minute or two to work out the answer on paper. At the time, I thought I'd done well. I didn't get the job. I now know more about what they were looking for, and I'd say my performance was somewhere between 'meh' and 'good enough'. I'm sure they had better candidates.

When I interviewed at Google (back in 2014), I was asked the classic https://github.com/alex/what-happens-when question. I didn't know it was a common question, and hadn't specifically prepared for it. Nonetheless, I thought I crushed it. I explained a whole bunch of stuff about DNS, TCP, ARP, subnet masks, HTTP, TLS etc.

I said nothing about equally important things that were much less familiar to me: e.g. keyboard interrupts, parsing, rendering, ...

Luckily I passed that interview, but at the time I thought I'd covered everything important, when in reality my answer helped show the interviewer exactly where the gaps were in my understanding.

enraged_camel

One of the worst things about the employment market in the US is that you almost never get accurate feedback about how well you actually performed. The reasons for this are of course legal (i.e. the company doesn't want potential liability in case the rejected employee uses the feedback to sue), but it is one of those things that work out against job seekers in a major way.

TheDong

I mean, you know that the answer the interviewer was looking for was "use a trie/prefix-tree, want me to implement it", not "that's not my job, ask another team to setup elasticsearch".

If you're going to do coding interviews, you can say "I would use X tool", but you can't _just_ say that, you also have to say "but if I can't, I would write X algorithm, should I write it?"

Also, based on your description, you're suggesting going from entirely client-side, to having a server round-trip, to make it more performant. I could be misunderstanding the full question and context though.

djoldman

> Next, you cover the whiteboard in boxes, arrows, and at least one redundant Kubernetes cluster. Add a message queue, Kafka obviously, regardless of whether you need one. Sprinkle in some microservices because monoliths are for peasants, and draw load balancers like protective talismans around every component.

Loved this. TFA is so true: interviewing is unfortunately a performance (for both sides, but mainly the interviewee).

jjk166

I have interviewed many people. I have never once been impressed by someone figuring out a convoluted way to force a round peg into a square hole. The people I recommend are the ones who question why I would want to do something. If need be, I can always follow up with "but what if you had to do it this way." But for a question meant to evaluate technical ability, I am going to ask you how to do something which is a best practice. If I'm asking you how you would solve an absurd problem, the purpose of the question is to evaluate how you approach problems, and I will let you know that's the purpose of the inquiry.

ajmurmann

I'm with you on this as an interviewer but as an interviewee have had interviewers who clearly didn't like it when I did this or even started to get impatient when I called out different problems than they cared about. There is a really terrible feedback loop around interview expectations.

hinkley

The worst question I've been asked recently was how to make something robust.

When I started running down the laundry list of footguns with the basic solution, he clearly became impatient. I never did figure out what he was after, but I worry for the team.

quantified

Ha. I like to give a systems design scenario that rewards simplicity. Candidates who complexify it (usually in very predictable ways) get rejected. The few who see the simple path have been great hires. Because they also asked the right questions.

harimau777

Isn't that just another kind of trick question? It seems like that relies a lot on the interviewee guessing that you aren't looking for a standard complex solution.

theamk

By "trick question", people usually mean the questions that won't occur in real job. This does not seem the case here.

I have no idea what the OP's actual questions was, but as a made-up example: If the problem is solvable with static sqlite database copied to every node during deployment, but candidate suggests master-master postgres cluster instead, I would not want them. I shudder just thinking what kind of monstrosity they'd build if hired.

harimau777

Maybe different people use the term differently? To me a trick question is one where answering it requires intuiting some specific secret to solving the problem. In this case, it would be intuiting that, unlike most interviewers, this one wants you to give a simple solution instead of showing off your knowledge of system design techniques.

null

[deleted]

OutOfHere

Thank you! What are the right questions for a candidate to ask?

As a candidate, I feel that I should ask the interviewer if they're seeking a simple solution or a very scalable one. In this way, I can try to tune the response to the specific interviewer's expectations.

quantified

In this case, the most scalable is the simplest. Do the math on where errors can occur and accumulate, storage costs, latency, where rate-limiting can haunt you. The "throw in every feature you learned in certifications" will mess it all up.

OutOfHere

Huh. The most scalable solution is never the simplest. Simple solutions scale fine up to a point, and no more. The two are at odds.

Esophagus4

Every few weeks, someone posts an article about how broken tech interviews are, and the articles always follow the same formula: but I’m really good at REAL engineering… it’s the INTERVIEWS that are wrong!

It sounds like the author may have faced a bad interviewer, but I’d be curious to see their feedback on the author so we get both sides.

As I comment each time: you’re not being asked to sort a million item array because it represents the job, you’re being asked to sort a million item array because I want to see how you think, how you solve problems, and how good your underlying CS fundamentals are.

Yes - that means regardless of seniority, I expect you to know CAP theorem. Sure, knowing CAP theorem does not imply you are a good engineer, but being a good engineer DOES imply you know CAP theorem.

The job will change from project to project, but the CS skills should carry through.

sharts

The problem is you want a proxy for that which you really can’t evaluate and you think the proxy is accurate because it provides some feel-good binary.

Fundamentally, you can’t really figure out the things you are interested that way. This is the underlying problem with tech and CS bros which results in the broken system being even more broken.

If anything these types of interviews are really only to validate the interviewers bias which is that they think they are smarter than everyone else and anyone else that came before them. Otherwise why would they have been entrusted to being the gatekeeper of shiny job and privilege to work along the interviewer.

One may as well just defer to SAT scores, GPA, or the fact that a person actually graduated from a reputable CS program, or dare we say, the fact that a person actually had the same or similar jobs successfully over many years.

The reason people bomb these are precisely because they don’t need to exercise that “deep knowledge” that often in the first place. It doesn’t mean they aren’t capable it just means they’ll need to walk thru it longer than possible in a contrived situation. And the fact that they haven’t needed it is telling —these jobs aren’t really hitting the edge of CS research; it’s just a CRUD app.

The autists need to get off their high ponies and look at every other professional industry out there. Those industries have smart people too. Somehow humanity survives and the industry evolves…go figure.

Esophagus4

> you think the proxy is accurate because it provides some feel-good binary.

Having run this “proxy” process for years now, I can tell you it is, in fact, the most accurate indicator I have seen of software engineering capabilities. If you prefer, there are absolutely companies that don’t use the process, and they’ll hire you after a quick resume conversation. Frankly, I wouldn’t want to work there, having seen the abysmally bad talent hired through lax processes, but Godspeed if that’s where you want to work.

> the fact that a person actually had the same or similar jobs successfully over many years.

No matter how good you think you are, if you can’t pass a basic live coding exercise, you have no place on my team.

…You’re not being asked to invert a binary tree in 20 minutes with your eyes closed, you’re being asked to traverse a string and use a set. Stop whining.

Herring

The interviews are wrong. Check with your favorite frontier LLM. There has been a lot of research on what's predictive for job performance and what's not, but it's largely ignored.

An easy example: Google's "Project Aristotle" - https://psychsafety.com/googles-project-aristotle/

tl;dr: psychological safety was the determining factor of highly effective teams. Then Google goes and does large-scale layoffs. Think about your workplace, do you feel safe? Do you think these interviews help people feel safe?

Esophagus4

Great idea.

So we’ll do both: have a high bar for technical interviews and a culture of psychological safety. That should be the best of all worlds and create a high performing team.

I’m not sure your point here. Yes, high performing teams have psychological safety.

siva7

> Sure, knowing CAP theorem does not imply you are a good engineer, but being a good engineer DOES imply you know CAP theorem.

Eh, no it doesn't? I guess it's one of those questions - what makes a good software engineer - that people will never universally agree on like many other topics in the field but still think their own truth is universal.

Esophagus4

Those that don’t know CS fundamentals end up making bad technology decisions.

I can’t tell you the number of times I’ve failed a “senior” level engineer because when I asked, “Tell me why you chose X database on Y project,” the only thing they could come up with was, “Well, we were storing JSON data, so we used Mongo.”

I don’t want to be left cleaning up the mess that guy makes.

wakawaka28

>Yes - that means regardless of seniority, I expect you to know CAP theorem. Sure, knowing CAP theorem does not imply you are a good engineer, but being a good engineer DOES imply you know CAP theorem.

There are lots of good engineers who don't encounter this, but who will understand the CAP theorem to the same level you and most other people you consider "good engineers" do, after simply reading the top of the Wikipedia article about it. Ultimately you need to be the kind of person who can understand such a thing to be a good engineer, not someone who knows any particular random thing. On the other hand I would like to know that the candidate knows the CAP theorem if we are working on a distributed database or massive web service. In that case it is actually relevant.

>Every few weeks, someone posts an article about how broken tech interviews are, and the articles always follow the same formula: but I’m really good at REAL engineering… it’s the INTERVIEWS that are wrong!

Interviewing is mostly a different skillset from day to day work. That is why everyone complains about it. Knowing that you are good at the job you're applying for, perhaps better than the smug interviewer, yet blocked because you can't produce an optimal solution to their puzzle (that they probably stole from someone else and/or could not solve themselves in an interview), is hella frustrating. If you urgently need a job, it is even worse.

hinkley

The number of times I've worked at places where the competent people likely could not pass their own interview questions if they hadn't thought of them themselves is too goddamned high.

I'm getting tired of having to coach other senior devs on how to interview like they mean it instead of like it's a drinking game.

Google has come right out and said that none of their interview strategies have made a statistically significant difference in employee outcomes.

Esophagus4

> Interviewing is mostly a different skillset from day to day work.

It’s not, really: this could be true if your day to day work is writing very basic websites without real performance or scale constraints, but if you are building large, performant systems, a good technical interview will give you a chance to show those skills.

There are plenty of places that have lower bars for hiring if you can call a JSON API in Python and run some Linux commands - but for the places everyone wants to work, you should expect a high bar. And that’s a good thing! A players want to work with A players. I would not want to work at a place that has a low technical bar for hiring.

> Knowing that you are good at the job you're applying for, perhaps better than the smug interviewer, yet blocked because you can't produce an optimal solution to their puzzle (that they probably stole from someone else and/or could not solve themselves in an interview)

It goes without saying that interviewer successfully passed that interview process to get hired there. So they have demonstrated at some point that they can do the problems they’re asking you to do.

Blowing a technical interview sucks, I get it - I have blown dozens of them. It’s humiliating, I’m aware, and so people find all sorts of copes (I would’ve been better than my interviewer at the actual job if I had just been given a chance! They couldn’t solve that problem anyway!) but they don’t want people that can just do the job - they want really talented engineers that can grow with the company and build all sorts of things.

Being a good engineer does not imply you’ll pass the interview (there are plenty of reasons good engineers fail interviews) but passing an interview does imply you’re a good engineer. (Edit: I’m assuming the interviewer is competent.)

And that’s the point: hiring a bad engineer is one of the worst mistakes a company can make. They’re expensive, take a long time to manage out, drain team productivity and morale, and can destabilize systems. You want a process that would rather say no to a good engineer than say yes to a bad one.

barchar

> It goes without saying that interviewer successfully passed that interview process to get hired there

It does not.

Also, even at the places with the most consistent interviews difficulty is pretty all over the place (or questions are well-known).

Anyway, for me the answer to my interviewing woes was a propranolol prescription

wakawaka28

>It’s not, really: this could be true if your day to day work is writing very basic websites without real performance or scale constraints, but if you are building large, performant systems, a good technical interview will give you a chance to show those skills.

I don't write websites at all. I have had to deal with performance issues but frankly it is rarely a major concern for anyone. Furthermore, interviews don't resemble work, they resemble LeetCode or other competitions.

>Being a good engineer does not imply you’ll pass the interview (there are plenty of reasons good engineers fail interviews) but passing an interview does imply you’re a good engineer. (Edit: I’m assuming the interviewer is competent.)

Having a degree and a long employment history implies that you are a good engineer more strongly than your performance on a random puzzle question. Most interviewers are not that good.

>And that’s the point: hiring a bad engineer is one of the worst mistakes a company can make. They’re expensive, take a long time to manage out, drain team productivity and morale, and can destabilize systems. You want a process that would rather say no to a good engineer than say yes to a bad one.

Yes, these companies want a process that provides superior vetting compared to 4 or more years of intensive schooling, or else something so far out that it can distinguish among expert candidates (while taking no more than an hour). It's a stupid objective. Coding interviews should mainly determine if you lied on your resume or not. It should not be seen as a magic way to spot "good engineers."

If you want to filter out bad engineers, just ask them questions that you expect bad engineers to do badly. These are mostly design questions and not coding questions.

sheepscreek

I found the article’s premise intriguing. As I read through it, I noticed the author wrote:

> Hiring committees fear false negatives more than false positives.

If positive = a strong candidate, then a false positive = incorrectly labelling a candidate strong.

Conversely then I would think that a false negative = incorrectly labelling a candidate weak (when they were actually strong).

In my experience, hiring committees are more clear about who they don’t want than who they do. But there’s only so much insight you can gather from interviews. So when lacking more data, they are happy to pass over great candidates if that means their process avoids some bad ones.

It’s an imperfect system that optimizes for the employers’ convenience at the expense of the interviewer. So ‘auditioning’ under the circumstances is a great analogy.

enraged_camel

The way it was explained to me many years ago is that a bad hire can cause tremendous damage that goes above and beyond the harm of inadvertently missing out on a good hire. I've never really thought about whether that is true, but it is undoubtedly the reason why so many companies are risk-averse in hiring decisions.

lovich

It’s true if you’re a cutting edge company doing real R&D and parting with capital and agency to your workers as a result of it.

Every company whose CEO thinks he’s a mag7 but scoffs as paying more than >150k/yr to an engineer because that’s executive money that tries to ape that kind of risk management ends up with a hiring process that is optimized for rejecting people since their offered compensation will never meet the demand of people with the skill set they are looking for

quectophoton

And most of the steps in the interview process are not even technical (depending on the company), so most of your final score probably comes from your sales presentation^W^Wcommunication skills.

ghaff

I assume the alternative is that you give some standardized "civil service" exam.

Apocryphon

Honestly if it’s an exam you only take once or once every decade it’s an improvement over the current system.

ghaff

I can't speak to developer exams so much but companies are often looking for specific people who aren't well categorized by standardized exams.

random3

Highly related and high quality thread https://news.ycombinator.com/item?id=45064284. Several actors describing how it works in auditions among other great insights.

I wonder if it was the inspiration for OP.

SunlightEdge

I am wondering if the best way to interview IT people is:

1. Give them an IQ test

2. Have a coffee chat with them about their experience and ask a few technical questions

If people are smart, and decent communicators and broadly have worked in the role you are looking for (doesn't have to be same tool) they will likely be fine. I don't think testing for coding skills is needed - but that's just my opinion.

bigmattystyles

You’re also likely not interviewing for what you’ll be doing if you get the job there anyways cause who’s got time to update the interview scripts, right?