FYI I wouldn't know how to do fibonacci sequence because I don't know its definition. I could make a guess because it came up as a toy problem before, but because I never actually needed it for anything I'm not super familiar. Compound interview stress and I'd potentially get factorial wrong as well because that's also not something I'd normally implement.
I might recommend, when asking this question, to give the definition with a few example inputs and outputs. That should avoid these types of issues where people are perfectly capable of coding the requested algorithm but aren't mathematicians / toy problem experts
> FYI I wouldn't know how to do fibonacci sequence because I don't know its definition
OP here. As I said, "I give the solution away".
I basically tell the definition/formula at the beginning, and give examples and test cases for you to check your results against.
I also help people along, like I would in pair programming.
A lot of people still fail. Some with allegedly 25 years of experience. Luckily this is at the beginning, so I don't have to spend the whole interview with them.
ohh come on. Nobody ever needed Fibonacci or Factorial for anything, but if you bomb those after a few clarifying questions (like not knowing the initial values of fib or it's definition) I'm not sorry.
Factorial is just a for loop and with Fibonacci you might want to talk a bit about recursion and caching. That's it.
Yes, and I would because if I don't know then that's my only option (short of sitting there and going "no can do"). However, given their phrasing "basic shit like factorial or fibonacci" I got the vibe this is supposed to be known by the candidate and they'd judge the candidate negatively (before having written a single line) for needing to ask
I'd assume that the purpose of a simple question like that is to test basic programming skills (can you write a loop?). Testing knowledge of a specific math concept is doesn't really fit into this goal, so you're unlikely to be penalized for it.
I might recommend, when asking this question, to give the definition with a few example inputs and outputs. That should avoid these types of issues where people are perfectly capable of coding the requested algorithm but aren't mathematicians / toy problem experts