Live data from Hacker News

The FizzBuzz that did not get me the job

kranga.notion.site

371–380 of 460 posts

Re: The FizzBuzz that did not get me the job

#371

What a genuinely terrible interview. Seems like a great way to learn absolutely nothing about the candidate. I would have walked out half way through. These types of questions are very telling of an organization which is extremely insecure in its own abilities. For anyone who is a somewhat experienced programmer it is not hard to tell if someone else knows what he is talking about. You do not need to waste 45 minutes…

Absolutely. “What’s the difference between call and apply in JavaScript?” “Ah well I can never remember which is which, but they both invoke a function with arguments but accept the arguments differently, whether an array or spread.” When you reach for it you really want to be asking if you should be using bind instead, especially because of the massive gotcha of how JavaScript does binding, but with ES6 arrow functi…

what's the use case for call and apply? in 6 years i think i've written .call once

Re: The FizzBuzz that did not get me the job

#372
This sounds like a bad interview IMO. But also, don’t be this interviewee.

Solving a problem like this with the type system is setting off all kinds of “too clever for their own good” alarm bells. The goal of a coding interview is to showcase as concisely as possible that you know the craft of software engineering. Fizzbuzz should not be considered an IQ test.

The progressive requirements in the interview, while clunky, are getting at the reality of software development: there rarely exists a spec for what you are building. You need to be flexible to future requirements, and you need to write maintainable code that others on your team can understand.

Re: The FizzBuzz that did not get me the job

#373
post #371

Earlier quoted context omitted.

Absolutely. “What’s the difference between call and apply in JavaScript?” “Ah well I can never remember which is which, but they both invoke a function with arguments but accept the arguments differently, whether an array or spread.” When you reach for it you really want to be asking if you should be using bind instead, especially because of the massive gotcha of how JavaScript does binding, but with ES6 arrow functi…

what's the use case for call and apply? in 6 years i think i've written .call once

apply could be useful before the spread operator existed.

They can also be a bit useful to call one prototype’s function on another object given you get to pick what “this” is.

But in my 12 years I’ve never used them. They’re likely even less important now that we have arrow functions and other features. They probably were useful library building blocks way back in the day.

Re: The FizzBuzz that did not get me the job

#374
post #316

Earlier quoted context omitted.

I was really curious reading this. Many years ago I read this blog post (from 2007!) by Jeff Atwood[1] that mentioned FizzBuzz, and I guess I had mentally filed away that Jeff Atwood invented FizzBuzz! But that is not true. Jeff's blog mentions Imran. Jeff's blog is still up, but Imran's isn't! However it is up on the internet archive, and Imran's post is also from 2007[2]. My sense is that Imran wrote a blog in Janu…

Thanks for digging out those links. I think Imran came up with it in 2006 or 2007, he was certainly experimenting with interview questions around that time, so the blog post was not long after. I had no idea at the time he had a blog and didn't see the post myself until a few years after that. In fact, I think I saw Jeff Atwood's first!

Thanks for giving me enough info to start digging! Very cool that you were working with Imran back when this all started

Re: The FizzBuzz that did not get me the job

#375
Maybe I missed something, but if DATA is given as an array at runtime, is there a way to put it into the type system? And if the result is in type system, is there a way to print it out at runtime without looping through all permutations of the possible characters?

The solution was impressive and fascinating, regardless.

Re: The FizzBuzz that did not get me the job

#376
post #332

Earlier quoted context omitted.

I would have failed this question badly. I'm curious, how would you check that without access to any number or math operations? I think I would try something similar to what he did with his sum_table, but that too was disallowed. They're constraints I've never had to deal with, nor seen before.

Math operators like division aren’t native to your (traditional) cpu, they are implemented in code, for example using similar algorithms as the ones taught to us in grade school to multiply big numbers one digit at a time on paper and “long division”. All math operations can be implemented with bitwise operators, too, i am pretty sure Likely the interviewer specifically needed the candidate to do that, implement the…

> Math operators like division aren’t native to your (traditional) cpu, they are implemented in code

If you are talking about tiny microprocessors or old ARM chips, sure. But so are programming languages! They should have really asked him to code his solution in machine code then. After all, that's what you typically do in a NodeJS job :)

Re: The FizzBuzz that did not get me the job

#377
post #216
post #175

Earlier quoted context omitted.

I mean, the interview requirements are quirky and unconventional as heck. Anyone saying "you gotta check divisibility without math" on the job would get laughed out of the room.

The only thing I can think of is they were fielding for them to say "that's not possible" and push back, potentially as a way to gauge if they would reject unreasonable client expectations or something.

Then it's a stupid way to check for it, because it was possible and trivial enough to implement in a short time frame with a "rewrite" in the middle and no attempt to meassure pushing back in other ways when the first one failed

Re: The FizzBuzz that did not get me the job

#378

It’s not your technical skills. I guarantee it’s due to you not living in the Netherlands and not being fluent in English. No matter if the job offers says they accept remote people, in the Netherlands they really value face to face contact and good and open communication.

Respectfully, if someone puts "remote available" on a job description and expects you to know they don't _actually_ want those applicants due to specific nuanced cultural differences, those people can go fuck _all_ the way off for wasting my time.

Re: The FizzBuzz that did not get me the job

#379
post #163

I used to give fizz buzz with zero additions. Just write me a fizz buzz in c#. We didn’t actually want to take up a lot of the interviewee’s time. There were other tests, tests better than any programming tests. They had to take like one for SQL and one with nothing but logic puzzles, the latter of which is most indicative of whether a person will be competent at the job. Fizz buzz just lets me see their coding style…

A 2 minute Fizz Buzz at the beginning of the interview is great to filter people who managed to fool the recruiter. It is also a cool opportunity to "talk shop" if they go for a strange solution.

Based on the general reacion from some of the comments here, going for strange/novel solutions is seen as something to be avoided though

Re: The FizzBuzz that did not get me the job

#380

What a genuinely terrible interview. Seems like a great way to learn absolutely nothing about the candidate. I would have walked out half way through. These types of questions are very telling of an organization which is extremely insecure in its own abilities. For anyone who is a somewhat experienced programmer it is not hard to tell if someone else knows what he is talking about. You do not need to waste 45 minutes…

I argue the contrary case - the interview style is pretty reasonable, but the interviewers screwed up the process (and ultimately, the grading). "Adding additional requirements which test a candidate's ability to refactor code" is a pretty good exercise. And it's ok to force candidates people down a specific development path. The problem is that the interviewers didn't do this. They let the candidate pick a strategy…

> but writes incredibly well!

The post actually has a lot of small grammatical errors typical of someone not so fluent in English:

>> My reasoning went as follow: // My reasoning went as follows.

>> Is there any other numbers where this happens? // Are there any other numbers

>> I didn’t had paper at hand // I didn't have (any) paper on hand.

I'm not here to proofread a fun blog post but it's far from incredibly well-written English.

> that requires incredibly deep knowledge of the type system.

I think the solution needed more clever maths than deep knowledge of the type system---the type system knowledge can be self-studied from documentation. The clever maths, one can get used to if you Leetcode properly (you don't even need Leetcode Hard to get exposure to that).

If anything doesn't track in this respect, it's the claim that author doesn't have any kind of formal education. Not even high school? That will be extremely impressive. But maybe something got lost in translation there, or just careless exaggeration.

> Here's a viral calling card that would almost guarantee countless interviews (including from my company!) and they aren't capitalizing on it.

>> I don’t have anything to sell just yet, I am not a tech influencer so all you got was this post about a somewhat challenging FizzBuzz.

Yeah, not everyone is out to sell something, not every blog post is written as an opportunity to self-promote.

The story is definitely rather strange, even without taking into account the language barrier and the general absurdity of most tech interviews, but it's not outside the realm of possibility.

Post reply on HN