I failed a speed-coding challenge

I want to share a recent experience I had applying to a “high-end” freelance talent network, mostly just to get this off my chest, but also to start a conversation around current hiring practices in the data science field, and also to give others a chance to share any frustrating experiences they’ve had. I was very surprised by the process, and found it to be somewhat humbling, and at least a little bit farcical.

After the initial couple of screening steps, I had a live coding challenge with an interviewer who let me know that I would be given several problems to solve, and that I would have 15 minutes for each one. I was not allowed to use AI, not allowed to use code-completion/suggestion tools, or internet searches. The only thing I could use was the Julia documentation (obviously, I chose Julia to complete the tasks). My initial reaction to this was, WTF, 15 minutes is a really short amount of time, so I kind of thought the challenges were going to be trivial, but that didn’t turn out to be the case.

I don’t remember the details well enough to recount any of the problems very thoroughly, but one of the tasks involved a guy named John who would be vacationing in Hawaii, and I was asked to write a function that took a year and the names of two months as its inputs, and it needed to calculate the maximum number of weeks that John could spend in Hawaii, given some constraints around which days of the week flights departed and returned (oh, and it explicitly said I had to account for leap years too). Another problem had something to do with checking the results of an OCR output that might look like a??le or a2le, and the function needed to determine whether the different strings could have come from the exact same word (e.g., apple in this case). Again, I was given 15 minutes total, including seeing/reading the problem for the first time. By the time I was done reading through everything and making notes about the various constraints and requirements, I was really down to 10 minutes or less in each case. In only one of the cases did they even show what they expected the function signature to look like, and it was just a simple dynamically-typed Python function definition.

After performing quite abysmally on the first problem, I was getting kind of pissed off at the absurdity of all this and finding it difficult to stay relaxed. Needless to say, I didn’t complete any of the three challenges, and that was the end of the line for me in this process.

I guess I’m curious to know what others have experienced when applying for data science jobs. I thought these particular challenges were ridiculous and a really terrible way to evaluate the kinds of skills and experience that I bring to the table. To me, it’s a little bit like if a newspaper or magazine decided to recruit a new writer, and in the very first interview they start a 30-second timer and tell the candidate to spell antidisestablishmentarianism. Are they looking for a spelling bee champion, or a writer? Wouldn’t it be better to look at articles they’ve actually written, or maybe give them a topic to write about and have them send it in after a couple of days?

I’ve always worked on a small team and my job has always involved working directly with the stakeholders to understand the problem they are trying to solve, and then it’s up to me to figure out (and implement) what the best solution is, end to end. I am often trying to implement modern solutions on outdated government infrastructure with a tiny budget (or sometimes, no budget at all), so most of what I do isn’t even writing code – it’s big-picture thinking, strategizing, weighing pros and cons of different designs/architectures, researching potential methods that we can use, and importantly, designing solutions that are going to be robust and withstand the test of time.

What I found to be ironic about these challenges was that if a company just wants to hire someone who can bang out some fragile, dynamically typed Python code in 15 minutes, without considering potential runtime errors, tests, overall system design, etc., why not have an AI do that work? I wasn’t allowed to use AI or even code completion/suggestion, but the code I was being asked to produce was exactly the kind of shitty code that AI can reliably produce in a matter of seconds. I’m not sure if the interviewer was even aware of what strongly-typed, robust code looks like, to be honest.

Some people have told me that these kinds of challenges really aren’t designed at all to test your coding skills but are instead designed to test how you handle pressure. I guess I can see that for certain jobs, but I’m frankly not interested in working for anyone who likes to fuck with people like that. Unless you are in national security, or some other highly sensitive environment where you really might have to solve a life-or-death problem in a very short time frame, it’s just cruel and abusive. I know a lot of really talented data scientists, and I don’t think most of them could have completed the tasks I was given in the 15-minute timeframe.

So anyways, I’ve actually been able to have a good laugh about this process now and I’m mostly over it, but I’d love to hear thoughts or, even better, similar experiences folks have had!

I mainly work in legal AI training, although I did one data science-adjacent interview with a 15-minute exercise. Combining those, my take is that you fell victim to over-thinking, for several reasons.

  1. The number of recruiters who can read Julia does not need to be typed as a BigInt or probably even an Int8; so, even if you had finished it would likely have been tossed. Just as the beauty of academy French is lost on anglophones.
  2. The business objective of most AI trainers is in aid of their own or their clients’ ambitions to find a mass corporate market. That is a lowest common denominator business in which good enough equates to what the average white collar worker can do using “office productivity software” more cheaply.
  3. You may be suffering from inverse Dunning-Kreuger effect in which smart people under-estimate how much smarter they are than others. Of course everyone should care about edge cases (leap years anyone?). But. They. Don’t.

These are my own opinions, others are free to differ. However, I feel these types of interview challenges are at best mostly non-informative, on average misleading, and pretty much always unnecessary and stressful for those involved.

What they assess IMO is whether you’ve spent time practicing these sorts of programming challenges, and not much more. Sure, you might have practiced on leetcode or whatever the new place is this quarter, and maybe even learned some data structure tricks, which you can deploy and feel smug about. But these tests are so artificial and will be increasingly obsolete. Do you want to know who wins these coding challenges? Claude (or insert your model of choice here).

That’s the future. Those models can code 100x faster than me on tasks like this. Just like my compiler can produce assembly code 100x faster than I could. So why on Earth would we need to be running people through these hoops? Aren’t there like actual skills, knowledge, and experience which matter way more than this?

I’m not a fan, I won’t ever be a fan.

@mthelm85 , sorry you had to endure one of these, my advice is: don’t let it get you down, it’s not a good assessment, it doesn’t represent your true skill set, and you’re likely smarter and more talented than the people who are administering them.

Again, my two cents, YMMV, and so on.

(PS take a look at how Indian students study for the JEE … I’ve tutored/mentored several students in this position and I really think this style of testing is completely wrong. Also, the chapter “O Americano Outra Vez” from Surely You're Joking, Mr. Feynman! - Wikipedia springs to mind)

Chatting recently with a back end web developer looking for work. He found that it was AI bots interviewing him when he applied for a job. So he set up bots to represent him to the bots that were interviewing him. And then had a good laugh about it.

To thin out the herd of applicants when cronyism and nepotism doesn’t apply, and in a superficially better way than a lottery. I wouldn’t put it past a suit actually believing that speed-coding predicts productivity in case they can’t afford AI. Well good luck to them on their undocumented spaghetti.

Recruitment has been always out of touch with reality. It is sad to see how little improvement there seems to be, since selecting and matching people to jobs is one of the most influential functions in society.

If anything it’s devolved to the point where it is completely broken. I have quite a few horror stories I could share. Companies admit freely to interviewing candidates for jobs that don’t exist and that they are never going to hire for. It goes beyond unethical, it pushes into illegality. At least that’s the thinking of some who study the law [1].

[1] Ghost jobs. (2025). Columbia Law Review, 125. GHOST JOBS - Columbia Law Review

(PS Oh yeah I’m “open for work”)

So it may be a good thing that you found this out during an initial interview, instead of wasting more time on the company.

About tiny challenge problems (in coding, math, etc): when I interview, I don’t care about the actual speed and not even so much about the end result, I care about the thought process of the candidate. I also prefer simple paper and pencil math problems (I have a fun collection of those), coding is a distraction for short timeframes, 15 min is certainly not enough to assess anything. For coding skills, I would look at FOSS contributions, from the person, how they handle feedback in PRs, etc.

Good luck with your job search! Don’t worry, not all companies are like this, I am sure you will find one that is a good match, just give it time.

It didn’t even occur to me to practice on a platform like this. I’ve been writing code on an almost daily basis for 10+ years, so it just didn’t cross my mind. I’ve only ever been asked to do a live coding challenge in an interview once before, and it went very well (and I didn’t prep for it at all). The interviewer e-mailed me a messy, wide-formatted CSV file and had a few questions about the data and a few things I needed to calculate. I don’t remember there being a hard time limit, but I think I did everything in around 30 minutes, talking the interviewer through it as I went. I actually thought it was a really good, realistic exercise for a data science interview.

I guess maybe I was in the dark as to just how out of touch with reality some organizations might be, and it is kind of shocking that people are able to make a living matching candidates to jobs with these methods. This approach would suggest that they are simply spoiled for choice, and can afford to apply bad filters like this, but then the aggregate data in the U.S. doesn’t really line up with that narrative. Per the Bureau of Labor Statistics, there were 7.4 million job openings in June 2026 in the U.S., and 7.1 million unemployed people in the same month.

For sure. Respect and dignity are very important to me, and I think ambushing people in an interview by essentially putting a gun to their head and saying “code this in the next 15 minutes” says a lot about their values.

Yeah it’s sad. My experience might be a lot different, because I’m in engineering and I’m in the Netherlands where they care more about ‘the person’ than technical ability.

My last interview process took 3 rounds. The first round was a short phone call with a HR person, mostly just to confirm I was genuinely interested. The second round was with the manager via teams, to understand my intrinsic motivation for working at the company I was interviewing for. No technical questions were asked here. The third round took place at the company, and was a technical interview of about an hour with two engineers. I was asked mostly open ended questions such as ‘situation X occurs, how would you handle that?’. I was also able to ask lots of questions, so it felt more like a conversation than a one-way interview. Which also helps your nerves, if you have any. Downside is that it may be hard to judge how well you are doing. I guess if the conversation flows, you must be doing well. I found this process quite reasonable.

First, we all know that this is a figure of speech. You are always free to stop the interview, no one is forcing you to do anything. Sometimes values just don’t match, that happens, then you just extract yourself from the situation.

Second, while I appreciate your frustration with this particular interview, keep in mind that picking people to hire is not an easy thing to do. Some companies play it by ear, sometimes without clarifying what they are looking for in a candidate. Some companies imagine that they have worked out a technical, streamlined process which does give them information about candidates, but they are, in fact, fooling themselves. It is very rare for companies to do any kind of follow-up or cross-checking after hiring (for example, compare notes about people interviewed five years later and see where they ended up, and if the impressions have any correlation with outcomes).

Ik hou van Nederland :heart: :netherlands: I did a semester in Rotterdam when I was younger and absolutely loved it. Oh, what I would give to be able to live and work in Holland…maybe in another life :slightly_smiling_face:

“Farcical” is indeed the word! Totally impractical. IF one has been deeply involved with that particular working environment, THEN, maybe a speed test might be useful because you’d have background and other relevant issues already at your fingertips.
I have built several DBMS applications over the years, usually with only their existing historical reports as reference using 3rd and 4th gen DBMS engines. One hiring person, after I told him that I’ve not performed 2nd gen SQL in many years so my memory of some of the details are not at my fingertips. Btw, this is a telephone interview. His “tech” question was, of all things, about stored procedures!!! I told him that was from decades ago but all I needed to do, as any engineer, was look up some tech docs to refresh my memory. He was not pleased. It was a bit snotty, but I suggested he go back to dBase II and start from there. Yes, after telling them my last decade and a half of work, and doing ALL the design, coding, test, and fielding by myself, they want to hit me with ancient history (yeah, I know, SQL is STILL in usage even now)? I thanked them for their consideration and told them thanks but no thanks. I guess that still aggravates me to this day. That interview as in the 2008 time frame, IIRC.

Does anyone besides me evaluate the interviewers as possibly looking for free technical solutions for a difficult problem they have? It’s just a guise to research solutions from bright people and get the advice/solutions for free?

Extracting free labor does happen, but the challenges described so far are known leetcode-esque problems. Befitting “freelance talent network,” they’re attempting to measure some generic programming skill that is very divorced from reality and poorly predicts productivity. I’m not saying memorizing algorithms and factoids is useless, but it’s fairly obvious that that knowledge is far more easily picked up than a couple of degrees and years of experience in the field.

I’m just a babe in the woods, as I’ve never even heard of “leetcode.” More research time. :slight_smile: :slight_smile:

Ok. Kinda looks like a scam to me. Maybe I’m just suspicious these days. :slight_smile: Especially with the name dropping and the China hook, too.

Unlikely. There is nothing particularly free about hiring processes and you’d have to wade through large numbers of failed solutions to maybe not find anything at all in the end. And should you be lucky enough to find someone bright enough to solve a difficult problem for you, you’re probably much better off actually hiring them than not paying for a relatively short amount of their time.

Indeed. Hiring a worker can cost months of total employee time. Think of the documents to read through, the interviews, the internal meetings, the interruptions connected with each, etc.

This is assuming that the hiring process is motivated by a real job and incurs the proper costs. As kahliburke mentioned, many job offers and interviews don’t intend to fill a position, so they can cut costs and are trying to get something for their money:

  • cataloging the current talent pool and potential competitors
  • pacifying overworked employees who have been asking for more qualified colleagues
  • free consultation forwarded to a less experienced team or AI agents
  • unpaid take-home assignments big enough to cross into unpaid labor

These are either legal or impractical to prove in legal gray areas, so it’s worth watching out for red flags. Again, the described problems sound like leetcode stuff with well-known approaches and solutions, so I doubt most of this is happening. At most, maybe mthelm85 is now ranked low in some no-AI leetcode skill database for a stupid application filter.

While companies sometimes do stupid things, I don’t think this is as widespread as people believe. It is true that sometimes the process end up with no hire, but that is normal, especially for white-collar positions.

unpaid take-home assignments big enough to cross into unpaid labor

It may feel like that, but again, to use the output from a (yet) unknown third party for anything serious would require at least as much work (review from someone inside the company) and entail hidden costs (no possibility of follow-up in case of problems, copyright and liability concerns, etc). Compliance would tear its hair out for much less.

I know that interview processes can be exhausting, especially in a bad labor market. It is easy to end up with the conclusion that companies are doing all kinds of nefarious things. Some may, but the majority of bad experiences are simply the result of incompetence.