Live data from Hacker News

Gaming CS Interviews

transitivebullsh.it

121–130 of 163 posts

Re: Gaming CS Interviews

#121
post #111

Earlier quoted context omitted.

Asking someone "how many prime numbers are there?" seems pretty valid to me. It's an easy question. The two valid answers are: "a lot" or "infinite" (with "more than 10" also being a fine answer IMO). I'm not sure the interviewer was expecting the actually correct answer here (infinite) - lots of programmers don't know that there are infinite prime numbers - I think he was trying to set up for an explanation of an al…

If the job had been some sort of super low level position requiring a lot of hand written advanced data structures, then I might agree with you. Hashes, priority queues, skip lists, etc all rub up against more math heavy topics (number theory, statistics), so you would expect a candidate to at least have some familiarity with prime numbers. However, for a web framework? Like, primes are pretty simple, but they're als…

Still, whether or not the question was valid/appropriate/useful doesn't really matter. On the job, sometimes you will be asked things you don't know, or things you shouldn't even be responsible for knowing. The way this person responded to receiving a question like that indicates that they might be a difficult person to work with.

The interviewer sounds probably bad. After the person made it clear they didn't know about number theory, they should have moved to a different topic. But still, answering "Optimus prime" just suggests immaturity or even combativeness in the face of a difficult situation, which isn't someone you want to hire. There are a thousand better answers. Even snarky answers are fine as long as the person is meaningfully engaging.

"I don't know. Probably a lot"

"Maybe infinite. I'm not sure."

"It's an interesting question. Am I allowed to look it up?"

(As someone else said) "Definitely more than 10. Outside of that I'm not sure."

"I don't know. But here is how I would write a script to figure it out"

It comes back to the "move mt. fuji" style questions mentioned in the article. The point of an interview is not to determine whether you would be able to move mt. fuji anymore than whether you are able to answer the number of primes. It's about how you communicate and approach a problem. "Optimus prime" is such a non-starter that it doesn't even allow for a discussion.

I'm speaking as someone who passed a google interview and worked there for several years, so there may be some reason to believe my feelings around interview approaches are based in fact.

Re: Gaming CS Interviews

#122
post #2

> Guidance is expected; a great interview should be more of a conversation than a one-sided question and one-sided answer. I had a particularly awful interview at Google where the interviewer scoffed at me needing assistance. And in an interview at Twitter with a xoogler they asked me what I knew about number theory and I said "nothing" and they said they majored in it and proceeded to ask me number theory questions.…

I remember being told once in an interview "I'll be your google, your stackoverflow, so anything you'd usually search for on there ask me". Eventually I got to the point where I forgot how to do something simple where you'd usually just google it to refresh your memory. I decided to take his advice seriously and asked him, to which he responded to me basically by rephrasing my question as another question back to me.…

I had an interviewer say something very similar to that to me once during a live pair coding session. I got to a point where I asked him a question about how javascript worked and he said "Hmm, I don't know. Let's see!" We spent the rest of the interview trying to figure out if javascript did indeed work that way. I didn't get the job.

Re: Gaming CS Interviews

#123

So basic data structures and their Os, trees, proficiency with strings, sorting and recursion? It doesnt feel like something really hard

Take a stroll through LeetCode and you'll see that the hard part isn't memorizing all the "good approaches", it's understanding when to apply each and also whether you need to pull out parts of the algo or apply multiple.

Many of the questions don't have obvious solutions unless you've answered similar questions multiple times (or you have good recall and recall a pattern after seeing it just once), or you're able to tease out the "real problem" from the obfuscating English.

Re: Gaming CS Interviews

#124
post #13
post #6

I was already halfway through the article when I realized I'd misunderstood the title: It's not about about using games to interview people (Factorio style), which still might have made sense to test self-taught engineers, but about how to game the interview process.

And honestly, it's not really about gaming the process, but succeeding in it. Gaming the process sounds to me like you are abusing some weakness in the system without doing the work required. That is not the case here imho.

I thought gaming was taking the optimal path, ie: min/maxing. Abusing a weakness in the system sounds more like "cheating" or "fraud."

Re: Gaming CS Interviews

#126
post #114
post #80

Earlier quoted context omitted.

Whist number theory may never come up in Django tooling. "Something you don't know" always will; it is valid to try and determine how people respond to questions they don't know the answer too.

I think this is an 'okayish' position to take. There are some people who absolutely can't handle being wrong, and I've personally seen them wreck havoc when they get out of their depth. However, there has to be a limit to the nature of the questions that are being asked. If I'm spending my free time to go check some place out because they're telling me that they might be willing to give me a job, then I'm going to be…

I think you forget that even technical interviews are still aimed at examining soft skills.

"What is the 50th letter in macbeth?" could easily be interpreted as "How would you go about finding the 50th letter in macbeth?" which is plenty relevant to basic scripting.

"Do I have a source I can pull macbeth from?", "How does that source work?", "Can I query it for individual characters/words/chapters/etc.?"

I think a fundamental problem a lot of people in the comments section are missing is that these interviews are designed to examine the approach to solving problems, not the actual answer to the problem. Sure, if you get a question about traversing a tree, they probably just want you to repeat some basic knowledge.

Maybe something that will illustrate my point: If you happened to know the 50th letter of macbeth off the top of your head, it would defeat the purpose of the question. The point is to examine your problem solving process. If you were to just answer "r", then the interview would quickly pivot to: "Ok, what is the 307th?" or "Ok, what is the 50th letter of Othello?" The point is not to answer the question, so much as to establish the person's ability to answer questions. Any answer that was a straight up answer isn't useful in any way.

There are all sorts of ways your example could be expanded into a useful examination of someone's programming abilities. If prompted, the interviewer might provide: "Let's say we have an api for querying the text of a given shakespeare work" "Could we expand that to other historical plays?" "What if we wanted a service to provide an arbitrary letter from an arbitrary play?" "What if we wanted to allow the user to specify between several options for the api we might use?" "How could we handle differing responses from different apis?" "Should we be counting punctuation or whitespace?"

It isn't so much that a certain subject (historical plays) might be relevant to the job requirements, it's that these questions are more about examining problem solving approaches.

Re: Gaming CS Interviews

#127
post #19

So basic data structures and their Os, trees, proficiency with strings, sorting and recursion? It doesnt feel like something really hard

The issue isn't telling people about basic things like you learn in a CS major - it's about taking random problems and solving them on a whiteboard without any errors (syntactically or otherwise) while explaining the solution, alternative solutions, and figuring out any gotchas that they love to throw in less than 20 minutes. An easier one would be something like this - https://leetcode.com/problems/combination-sum-i…

Very important callout about the time.

Solving the problems alone in your personal environment is a completely different experience compared to being judged on the spot + knowing the person interviewing you is determining whether you get a 2x compensation boost + you need to solve the problem in 15 minutes and a single mistake in your reasoning steals precious time that you may not be able to recover.

I was comfortable solving mediums in about 30 minutes before I committed to my Facebook interview. I was devastated to find that not only is 30 minutes more than the 20 minutes they give me before moving on to another question, I was so stressed that my thinking process was significantly slowed.

Re: Gaming CS Interviews

#128
post #19

Earlier quoted context omitted.

The issue isn't telling people about basic things like you learn in a CS major - it's about taking random problems and solving them on a whiteboard without any errors (syntactically or otherwise) while explaining the solution, alternative solutions, and figuring out any gotchas that they love to throw in less than 20 minutes. An easier one would be something like this - https://leetcode.com/problems/combination-sum-i…

I've seen some very bad interviewers that will fault you for non-perfect solutions, but most will have some sort of reasonable leeway in what they will take as a solution.

Given your clear technical expertise here and on Twitter, I would argue that you might just be performing better than most people, so "most interviewers" are more reasonable with you specifically.

Re: Gaming CS Interviews

#129

>Many companies in the tech industry have started moving away from traditional, technical whiteboard interviews, because they tend to bare little relevance to an employee’s day-to-day work What companies? I have literally never interviewed anywhere that didn't run the standard cargo cult gamut.

The article is 5 years old. At the time, a lot of non-FAANG companies were moving away from this style of interview in favor of take home tests. That didn't last long.

Re: Gaming CS Interviews

#130

The first time I encountered a "riddle" type interview question, I'd already held 5+ jobs and I nominally had 8 years' experience in IT. The job was for a Unix sysadmin job in academia. The interviewer described a room with two lightbulbs in it, and a room down the hall with two switches, and I was supposed to figure out which switch controlled which bulb without going back-and-forth so much. I was stumped & didn't r…

Obviously I don't get the question. But, two switches, two lightbulbs, can't you just turn one switch on, leave one switch off, and see which lightbulb is lit? You only interact with each room once. Unless there's some funny business going on?

Edit: oh, the bulbs need to be off at the end? Nah

Post reply on HN