Sitemap

The Tech Interview Circus

7 min read2 days ago

--

Software development recruitment processes have turned into a humiliation ritual for candidates in the wake of AI’s passage.

Please record a 1–2 minute introductory video explaining why our company is the greatest to ever exist.

I have hinted in a different article that recruiting in tech is currently a disjointed and broken procedure, for both the candidates and the recruiters. While writing that piece, I decided it deserved its own article. I was always under the impression that we, as humans, have a faint connection to a master brain that feeds us, subconsciously, pieces of information that become common knowledge. This mini-collective allows us to coexist with other humans based on a set of rules that never need to be discussed or questioned. For example, when driving, we all assume every other driver has the necessary license and behaves within reason; they will not purposefully crash their means of transportation. A simpler example is that we all wear clothes in public. All our decisions are made based on information stacked on top of these common rules. And then modern tech hiring comes and throws it all out the window.

What seems to be the problem? Complete detachment from reality mostly for employers, but honestly, it has affected job seekers too. Candidates and companies paused, thought about AI and then all arrived at different (and mostly wrong) conclusions about how to utilize it. To make matters worse, some companies have not thought about AI at all, which unfortunately also leads to incorrect verdicts. Admittedly, what the “wrong conclusions” and “incorrect verdicts” are, turned out to be a contentious subject. This baffles me — I genuinely believed that these conclusions would be general knowledge, unspoken rules engraved into the grand collective. Boy, was I wrong.

As a side note, the odds of being right on this topic are not in my favor, there is a concrete risk I sound delusional. After all, my claim is that thousands of companies are getting it wrong while only a handful of others and I are getting it right. I’ll present my truth and then let you decide.

The purpose of any job interview is to determine whether or not a human being is the correct human being to hustle along with other human beings on (usually) one domain of knowledge. There is absolutely no need to complicate it any further. AI does not need to forcibly insert itself into the conversation, yet it has, and the results have been catastrophically terrible.

Let us begin by criticizing the candidate pool first. They share a smaller part of the blame. For the love of everything, please stop open-sourcing your vibe-coded application about job hunting. I completely sympathize with the attempt to showcase your post-employment activities, it is the correct mentality, but one of the reasons you are not getting hired is everybody is delegating their job search to AI, tailoring their resume to every job posting. If everyone is the perfect candidate, nobody is. I know you received advice about utilizing AI to gain a competitive advantage, it was wrong then and it still is. It is impossible for employers to review millions more applications with the same workforce, so they will either also enlist their agents to filter candidates out or get back to you in several months. Furthermore, the world is still in a state where people can tell when something was generated by AI, at least when it comes to text — it has a unique way of writing, very rigid. While I do not have evidence to prove this, I assure you, recruiters are tired of AI-generated CVs and generic messages that they get hundreds of. Please, turn the AI volume down substantially. Recruitment is a place for humans. We are producing so much “job application slop”, we just drown in a sea of AI-generated everything. You will not be left behind if you remain human in your job hunt.

I am no stranger to getting rejected from a role. The story is shared amongst most people in tech, you will probably have to send hundreds of applications before an employment offer, making your success rate sub-one-percent. Almost everyone is numb nowadays to the dreaded rejection email cliche. However, there are three documented cases where I actually held grievances against companies because I genuinely felt I was misjudged since their hiring process was broken. Two of them have occurred in the past two years. Ever since, I thought long and hard about how companies have adapted to AI when it comes to the interview process.

Get Konstantinos Daskalopoulos’s stories in your inbox

Join Medium for free to get updates from this writer.

Some completely surrendered to our new LLM overlords, the candidate just prompts. Unless these companies treat code as a black box, this process does not judge the candidate’s abilities correctly. Personally I think ownership is still incredibly important, code should be written by humans assisted by LLMs, I have found this combination to be the optimal balance for reasons I will not elaborate on in this article. However, I am not in a position to judge this objectively, maybe the future is just prompting. I refuse to be a part of this though.

Other companies utterly reject AI usage for their hiring process and ask the candidates to turn into “coding cavemen”. The process I am referring to is the live coding interview. While it is not a new concept, the rise of AI has seen its popularity skyrocket — mostly because companies feel take-home assignments are not good indicators anymore, an assessment I completely disagree with. It has also turned quite draconian. They invite you into a meeting room, either in person or online, and ask you to turn off anything that could assist you in the slightest. Not even IDE auto-complete is allowed. I guess they are testing raw coding from memory, but then they also apply a time limit to it. They do not share the details of the task beforehand so you arrive with minimum preparation. They do not provide the number of tasks you will have to complete within the time limit — if you get stuck somewhere you have no information to make a decision: skip this task and revisit later or power through at the risk of not seeing all tasks (which immediately disqualifies you)? It is a soul-crushing process where they strip you of all comfort and judge you at your worst. I never understood these kinds of interviews. Software work is investing time to understand and prepare for the problem, implementing the solution as stress-free as possible to minimize mistakes and ensuring maximum assistance availability for timely delivery. Most requirements on job postings demand independence and ownership. In a work environment, developers are left alone to implement their backlog without disturbances, why are we actively testing them on the exact opposite? The live coding interview just tosses everything aside — no preparation, maximum stress, no tools, no margin for error. Honestly, even if someone passes this test there is no guarantee they are the right person for the job as there is no connection between these two. At the same time, it is an unfair ordeal to put candidates through. What if the applicant has ADHD? Suffers from panic attacks? Personally, I have failed all live coding interviews I’ve ever participated in and I still had (have) a career I’m proud of. It’s probably a skill issue, but it is not a skill I am interested in acquiring. I refuse to get better at live coding just to get better at live coding. Unless the job role is actively seeking a top 0.001% candidate then such processes are incorrectly disqualifying capable engineers. I have been told in the past to just prepare better. I cannot simulate the stress and the stakes of the real moment in a mock environment and it is impossible to participate in so many live coding tests that you become accustomed to them, nobody is getting interviews daily. The problem arises from brilliant and talented developers. They genuinely believe that since they can operate fast, correctly, on the spot, on their first try, under pressure, everybody should be able to do it too. It is a soft skills issue, something that — usually — the brightest shining technical minds seem to be lacking.

Ultimately, the criteria that we should be judging developers on — according to my understanding of what common knowledge should be, and not sorted by importance — are:

  1. Curiosity. The thirst for knowledge and solving problems.
  2. Critical thinking. It is acceptable to not have an answer to a question, in fact this will happen quite often. The ability to ask the right questions and then figure the answers out is priceless.
  3. Experience (depending on the role seniority of course). The candidate’s resume must overlap with the technical requirements.
  4. Adaptability, especially cultural and social. A pleasant and collaborative environment is built on its people.

These requirements stand the test of time and have not been influenced by AI. There exist plenty of ways to judge them, none of them include live coding or seven rounds of interviews. A take-home assignment with a deep technical dive on the decisions taken is still the way to go. Obviously there are other means to achieve that goal, but at the end of the day, an interview should be aiming to allow candidates to function at their best possible state, not their worst.

In conclusion, things have taken a really weird turn in the past couple of years. Matching job seekers to employers was a semi-solved problem and the AI frenzy has “unsolved” it. We need to stop delegating our critical thinking to it and make our own decisions. Only then will common sense be common sense again.

--

--

Konstantinos Daskalopoulos
Konstantinos Daskalopoulos

Written by Konstantinos Daskalopoulos

Software developer writing about the connection - or lack thereof - between tech and society. I fail spectacularly at being articulate; feel free to judge me.