← Back to context

Comment by gobdovan

10 hours ago

I always wanted to tell the story of my weirdest interview. It's bad in a different way from OP's. This was for a "Machine Learning Engineer" contractor position.

- Hi, I'm gobdovan. How are you? says I.

The interviewer doesn't bite:

- How many prompting techniques do you know? (ok?..)

After a couple confused seconds, I respond with 2-3 techniques and ask if I should explain them, but the interview engine is already running at full speed:

- What is PEFT? How many PEFT techniques do you know?

I say I know LoRA and start to explain it, but the interview had no patience for answers longer than their acronyms. Before I knew it, I heard frantic clicking.

- He starts sharing his screen while I am still talking about LoRA in the background. Puts up an empty car from Google Images and commands: "Model the relationships between cars and people positioned inside the cars over time."

Uncertain of how to satisfy the inquiry, I start foolishly questioning what the task is supposed to be: vision? simulation? dataset labeling? self-driving cars?

But the interviewer doesn't budge. Doesn't give a specific task or context. Simply ignores the questions and stoically refuses to elaborate. The stars speak to me, and I guess he wants a relational mapping of some kind. Turns out I am right. This was supposed to test basic SQL table modeling.

At this point, I decide I'd sit through the interview just so I can collect all the questions. I am not disappointed:

- How many agentic frameworks do you know?

- What is the name of OpenAI's embedding model, and how many dimensions does it have?

- Then, the last ordeal lands: interviewer takes out a piece of cardboard that has "context engineering" written on it and asks: "What does this tell you?". His camera is unfocused, I ask if he could read what it says. Instead he repeats: "What does this tell you? What does this tell you? What does this tell you?".

I ask if he is the ML team lead. Turns out this absolute Chad is a mobile dev the client asked to interview candidates for the MLE role.

I've had an interview like this in the past. At the time, I chalked it up to a power trip and the indignant behavior that comes along with it, as it is especially embedded in the culture of the country that I'm based out of.

Having said that, talking to a relative, I found out that this style of "interviewing" is often done when they already have someone for the position, but need to show (for compliance reasons, or otherwise) that they tried finding candidates, and only their preferred one qualified.

  • I had a really weird power-trip interview once, and it was the CEO who was joined by a contractor who was ostensibly the technical lead for the project. There was nobody in engineering who worked full-time on the job, everybody was contracted. I was also going in as a contractor so I was aware that the interview would be a bit lighter on process as a result.

    The questioning very quickly veered away from technical stuff and into stuff like, "where do you stand spiritually?" and other questions probing into whatever bizarre cosmic insights I could pull out of my ass at the time. He was the really intense kind of boss who wants to make sure you know of it with the hard back/shoulder slaps and micromanagement, and I could see his office from the boardroom which basically had an array of monitors all wired up to CCTV so he could watch (and hear) people from the comfort of his desk.

    If any of that wasn't a red flag, getting hired literally 5 minutes after leaving the office was probably the biggest. I lasted about 6 months and even trying to leave was an ordeal.

    • > I lasted about 6 months and even trying to leave was an ordeal.

      Like finding your next gig or just not showing up ever again? Because I've worked at a place where someone came in, went to lunch, and they never saw them ever again.

  • > Having said that, talking to a relative, I found out that this style of "interviewing" is often done when they already have someone for the position, but need to show (for compliance reasons, or otherwise) that they tried finding candidates, and only their preferred one qualified.

    Or they only want candidates from a specific country to apply which is seemingly the case. I've heard from very talented and capable developers that they're getting auto-rejected once the interview reaches someone from a very specific country, no matter how good they did prior. I've also been personally told by people I know wouldn't BS me, that had my name sounded like I was from a particular country HR would have contacted me for an interview, but because I'm none of the countries some companies seem to only hire from, I get ignored. There's a problem with tech hiring and nobody wants to talk about it because most people are unaware.

  • > I chalked it up to a power trip and the indignant behavior that comes along with it, as it is especially embedded in the culture of the country that I'm based out of.

    That's a very globally-conscious way to refer to the USA!

  • > I chalked it up to a power trip and the indignant behavior that comes along with it, as it is especially embedded in the culture of the country that I'm based out of.

    You previously said:

    "One of the things people in the US like to do is to take some thing that's being negatively talked about and spin that into a thing that only people in the US do"

    Well, it sure sounds like a thing people from your European country like to do as well.

I had an interview like this, I got annoyed and just responded with "I don't know" to all of his questions. Then the CEO of the company offered me a position, politely declined ofc

> I ask if he is the ML team lead. Turns out this absolute Chad is a mobile dev the client asked to interview candidates for the MLE role.

Some times I run into companies like this: The people you talk to are so visibly inexperienced that you can't comprehend how the company functions, let alone makes money.

Some times it's a zombie company. They received funding or got a windfall from some early business moves, hired a ton of people, and now they're floating through the industry transferring money from customers to salaries as long as they can while their customers slowly leave for better options.

Some times it's a company with horrible management skills. They promote people who play the game instead of doing the work. The person in charge of the ML initiative only wanted to say that they hired MLE people for a new ML initiative for their resume. They grabbed someone who wouldn't complain or talk back and gave them the job of interviewing MLE engineers. That person ChatGPT-ed some questions and ran through a list in each interview, knowing their job was to go through the motions. The interview filters out everyone who would hate that environment, selecting for more people who know that the name of the game is going through the motions and pretending to do work while avoiding getting fired.

I had an experience like this. I showed up and was handed a 50 question pen-and-paper exam on C# trivia, like the result of cursed operator precedence chains. I am not a C# programmer.

No small talk, no discussion of the role, no discussion of my experience or interest in the position. I kept trying to decline and open up a more conceptual conversation on relative importance of things in software, but they really cared about grading my work.

Easily 2 out of 5 interviews I've taken expose spectacular miscommunications between HR / management and future coworkers.

> "What does this tell you?"

Why didn't you answer, that it tells you that his camera is unfocused?

I don't understand how people tolerate this for so long, I'd start trolling the guy after his third question. If he wants to be rude, then I'd retaliate and make sure I have a laugh while he is wasting his time.

  • Hard to claim the moral high ground if you do eye for an eye. Always be nicer than the other side.

    Even for practical reasons. If they think you are a prick, the blast radius can be substantially wider than this specific interview. And for what? The lulz?

    I'm not saying to accept rude behavior, but one can leave such situations without being rude back or making a scene.

    • > Hard to claim the moral high ground if you do eye for an eye.

      I do not claim the moral high ground. My moral is more flexible, than just "an eye for an eye" or "be nicer than the other side". I can do any of that depending on a situation. I'm starting any communication with the latter, it is a consequence of my upbringing, but if it doesn't work I may do anything. I want to note, I know that "be nicer than the other side" works oftentimes, people are entering into a communication in some emotional state and with some expectations, and these things can change during the communication. So I let my upbringing to try it first not just because of upbringing, but because I know the value of it.

      > one can leave such situations without being rude back or making a scene.

      One can. And I can. However there are situations when I just don't want to. A series of interviews that took my time just to end with the rudeness, so I just wasted my time is one of these situations. If they wanted to hire pushovers they could write it upfront in the requirements for applicants, I wouldn't bother them.

      4 replies →

"The tortoise lays on its back, its belly baking in the hot sun, beating its legs trying to turn itself over, but it can't. Not without your help. But you're not helping."

I had such an interview once. The recruiting agent explained to me beforehand that this is kind of a "stress-technical" interview, supposed to test my real knowledge as I would have to answer the questions without thinking, almost instinctively.

My interview happened on the phone while I was commuting on a crowded train, and was extremely successful - at the end, we both agreed that we were not looking for each other :)

This was back when leetcode was just coming in full swing (early 2010s), which since then replaced it completely. I think the (startup - coincidence?) company that was trying to hire simply didn't have the money to pay for a leetcode hosting service, a phone call costs nothing after all, only time...

It's also pretty sad that now "ML engineer" means prompting...

  • On the one hand I understand this fairly deeply.

    I started doing "ML" ~ 20 years ago building classifiers people would laugh at today and even at the time barely impressed people when they were 95% correct.

    I moved into NLP and built NERs that missed 2-10% of named entities per document routinely. Best of breed approaches and models rarely fared better.

    Learned the cornerstones in school for ML; linear regression, ANNs, traditional RL, image classifiers, A* bots, etc, most of which got baked into transformers later on.

    Then the transformers went from interesting novelty to useful. I couldn't build a useful one locally, but the toys versions were still fun to play with.

    Then the novelty LLM went from useful to generally applicable. Then they became a silver bullet.

    I still can't build one locally. I can distill or build or fine tune if you give me some rented GPUs. But to call this ML is very much a stretch.

    I still use the traditional ML a lot, but mostly for evals and analysis.

    I get being naturally bummed by this but I can't justify feeling anything but vaguely nostalgic about it. Someone with a $20 subscription can mog anything I can build with the skills I picked up.

    If someone hands you a silver bullet you'd be a fool to decline it and spend your time hand casting a crude piece of brass. If the difference between 95% and 99% means you know how to aim or oil the gun, that's the world we live in.

    Building a good RAG pipeline or prompt optimization or LLM consensus is dumb stuff that produces a better result than anything I could do from my 2010 ML/AI textbooks. I don't lack the knowledge or capacity to compete, I lack the compute.

    That's the job now for 99% of companies.

    • > I get being naturally bummed by this but I can't justify feeling anything but vaguely nostalgic about it. Someone with a $20 subscription can mog anything I can build with the skills I picked up.

      Welcome to the data science job market of the 2015-2023 where everybody with a $20 online course could become a proficient data scientist in only 4 weeks!

  • Exactly. Not 4 years ago I was rejected from a job for not having enough NLP experience. Can you imagine that today? Someone being hired to do NLP in the market of LLMs?

" but the interview engine is already running at full speed:"

I dont know if this is a recent thing, but I had a similar thing where an interviewer was racing forward, and would only accept the answers he had in mind.

In Python, he asked me how to search for substring. I was thinking but he started hurrying me. So I said regex and started writing a regex.

"No, there is an inbuilt method"

I couldnt remember the method. He asked me to google it, but there are dozens of string methods.

"I could use a regex?" I said and tried to show him how.

He ended the call, and 5 min later the agent called me to say my Python was sun-standard so they wouldnt be going forward.

This guy was a permanent employee and supposedly an expert

  • I’d call this an understandable mistake on the part of the interviewer. “in” is a pretty commonly used operator. But it is also a bit unusual/trivial, in the sense that most languages would have a method or a function instead.

    It’s the sort of thing where if you’ve written, like, any Python at all, it’ll be somewhere in the back of your head. It’d surface immediately on the job. But if you’d been using any other language earlier that day, it might not pop up reflexively, or in interview-stress mode.

    It’s essentially trivia, and over-indexing on trivia is a mistake. But if they were a Python writer every day, I could see why they’d incorrectly expect everybody to have “in” in their l1 cache.

    • I don't understand how did you jump to the membership test instead of literally the .find() method on a string?

      The interviewer is not asking to solve a problem here, they're asking for a simple ability to follow instructions, hence the offer to use Google to find the correct answer.

      You could make a very solid case for using "in" (it is 2-4x faster), but only after you've solved the task at hand, this is what is expected in interviews. Not knowing the interview meta makes an average Joe basically unhireable in this market.

      1 reply →

  •    if "needle" in haystack:
          print ('haystack.__contains__("needle")')
    

    Is probably the obvious/canonical answer to the question of trying to find a substring.

    So obvious that -to be fair- I blanked for a moment too. But 'in' is an operator, not a method (even though it calls __contains__ under the hood) . The question might have been slightly malformed?

    • No, there's literally a "find" str method.

      str.find(sub[, start[, end]])

      "Return the lowest index in the string where substring sub is found within the slice s[start:end]. Optional arguments start and end are interpreted as in slice notation. Return -1 if sub is not found."

      Your instinct to resort to "in" is correct as it's generally slower than the "in" membership test, but the interviewer has even allowed the use of Google. Blanking out after that is really bad.

  • Commenting just to go against the other two answers. I think it's fine to not remember things, no matter the apparent simplicity.

    Quite surprised by others finding this as a... Surprise? I get there is people who never experience this, but they also not know anyone personally to whom this would happen?

    • I think we're either reading very different comments or having very different understanding of what google search does :)

  • I probably would've done the same. "I don't remember what the function is called" would've been fine-ish, but reaching for a regex is just insane.

    • A regexp basically comes with a compiler. Who knows what sort of optimisations they've built in under the hood. It wouldn't be surprising if there was a special fast-path for efficiently searching for a substring; that'd be effective in practice.

      But more importantly it is hugely context sensitive on how often the function is going to be called and what IO needs to happen around it to decide if speed matters at all.

      Using a regex as a first attempt is entirely reasonable. Especially in an interview about Python. If we care about efficiently doing substring matching Python isn't the language of choice. If a programmer just wants to remember how regex work and get on with their day they'll do fine at handling string problems.

      1 reply →

    • It kind of depends on the substring and problem context.

      Arbitrary substring in arbitrary text vs extracting embedded plant code from product serial numbers.

      As long as you've got a good explanation for what you chose and why you chose it and the pro/con it's probably fine.

    • Sarcastic or for real? Because I find that an obvious choice, a little depending on context though.

  • I like such interviews. They tell me it's not a place I want to work at without wasting much time finding out.

  • The interviewer was right. If you don't know "if substring in string" by memory, your python programming is substandard. This should be automatic for anyone who works with python as a primary language. But if you can't even Google to find "if substring in string", why would anyone pay you even minimum wage to be a programmer?

    • I can't tell if you're trolling or not, but this is a ridiculous thing either wya.

      I've used Python as my main language for ~10 years in various professional roles (DS, DE, SWE) and I so rarely need the exact construction `substring in string` that I probably would have blanked on it too in an interview. 99% of my string processing is .startswith/.endswith and re.search, that's just the way it goes. Hell, I know the difference between re.search and re.match by heart (do you? no? you're substandard!) but I genuinely forgot that `in` works on strings.

  • He was being rude, but I'm equally baffled by your description. It was very weird that you couldn't figure out which method is to search for substring when you have access to google search.

    And it was triply weird that when he already said he wanted the non-regex way and you insisted on that.

    • I think there's zero excuse to be rude to candidates, and the 101 of interviewing is to make it as comfortable as possible for the candidate and not hurrying them up when they are thinking (which wouldn't rememble real work anyway, those aren't the typical time pressures one usually finds on the job... usually). You want them to succeed and not trip up; if anything because it means no more conducting interviews for you! Also, basic human decency.

      That said, really... finding a trivial python function using google search, that is a real life work skill. It's 100% real and not made up for interviews. I guess these days one would ask the LLM, too. The only artificial thing was the time pressure which, granted, complicates things needlessly, but other than that, the fact the candidate didn't come up with an answer is still a red flag. (I wouldn't disqualify them just for this, but maybe there were other red flags already?).

      1 reply →

I had one a bit like this, the interviewer was a nontechnical guy who just had a list of questions.

That is quite funny, I would have certainly left.

> Turns out this absolute Chad is a mobile dev the client asked to interview candidates for the MLE role

Those elite frontier mobile devs and their overwhelming power!

I don't know what I would do, I've never had to hang up on an interview, but I just might have especially after how it ended.

This is the best thing I've read all day thank you. I laughed so hard!

Oh man imagine if they asked the janitor to interview you and he just goes at it like it's the defining moment of his entire career.

Whenever I'm in an interview (almost) like this, I happily remind myself that interviews work in two directions: they are also for me to evaluate my possible employer.

Why doesn't stuff like this happen to me, i'd have so much fun with a guy like this >:)

> Turns out this absolute Chad is a mobile dev the client asked to interview candidates for the MLE role.

Until this line I assumed this was a screening by HR.

Did you get the job?

  • No, but I gained something just as valuable.

    After the interview, the recruiter who introduced me to this job said they had another role for me. But first, he wanted links to the other positions I'd applied to, what those positions were paying, and how far along I was with each one.

    I told him I wouldn't do that and he said that it was ok. Haven't heard from them in a year or so, but I'm sure that other interview is in the bag.