11

I've interviewed 200+ people, so I thought that there might be some interest for this (maybe not). These are some of the questions I have asked on many interviews to screen a candidate. Some of them are just a "make sure they can do it" vs "give me the shittiest answer you can code and then talk about how to improve it" vs "You need to know XYZ and prove you know XYZ". The coding parts I allot 30 minutes, generally 25 mins to give a real working solution, 5 minutes to talk about how bad it is and can be improved.

*Write code to determine whether or not a triangle is facing the camera or facing away from the camera.

*There is a 2D world of circles of various sizes moving at random velocities. Write me classes to represent the circles and world and print when an intersection occurs, but exclude duplicate intersections.

*When someone calls "Draw" from a graphics application, walk me through everything that happens after that to result in a pixel being saved in a render target and displayed on the screen. (My favorite fucking question. I can do 30 minutes on this and follow-ups no problem. Scales great from entry-level candidates to the most senior of candidates.)

*Write code to implement flood fill (the MS Paint bucket).

*Write code to evaluate 1 + 2 * 3 (to more senior candiates something like (1+2)*3) - I've only used this question once because someone else took the other questions I wanted to ask

*Draw a 2D grid on a whiteboard, fill some spaces with marker and ask the candidate to code how to find a path from A to B.

*What is a dot product, and what is it commonly used for?

*What is a cross product, and what is it commonly used for? (FUQ: What does the magnitude of the cross product of two vectors represent?)

*Lots of C++ and multithreading questions to see if candidates understand it - "what is a virtual function, and what is the overhead of calling a virtual function - what does the compiler generate?", "write me a multi-thread-safe hash table, FUQ to make it fast"

These are filter questions that work great on kids directly out of college to people who have been in the industry for 30+ years. If it's a college kid, I'll do 30ish minutes on a single coding question. If it's an experienced veteran in the industry, I may do one or two of the questions, or none and just hammer them on other things.

If you can't answer those, then study! They aren't interview far field questions like Google gives, but shit you might do on a daily basis.

I've interviewed 200+ people, so I thought that there might be some interest for this (maybe not). These are some of the questions I have asked on many interviews to screen a candidate. Some of them are just a "make sure they can do it" vs "give me the shittiest answer you can code and then talk about how to improve it" vs "You need to know XYZ and prove you know XYZ". The coding parts I allot 30 minutes, generally 25 mins to give a real working solution, 5 minutes to talk about how bad it is and can be improved. *Write code to determine whether or not a triangle is facing the camera or facing away from the camera. *There is a 2D world of circles of various sizes moving at random velocities. Write me classes to represent the circles and world and print when an intersection occurs, but exclude duplicate intersections. *When someone calls "Draw" from a graphics application, walk me through everything that happens after that to result in a pixel being saved in a render target and displayed on the screen. (My favorite fucking question. I can do 30 minutes on this and follow-ups no problem. Scales great from entry-level candidates to the most senior of candidates.) *Write code to implement flood fill (the MS Paint bucket). *Write code to evaluate 1 + 2 * 3 (to more senior candiates something like (1+2)*3) - I've only used this question once because someone else took the other questions I wanted to ask *Draw a 2D grid on a whiteboard, fill some spaces with marker and ask the candidate to code how to find a path from A to B. *What is a dot product, and what is it commonly used for? *What is a cross product, and what is it commonly used for? (FUQ: What does the magnitude of the cross product of two vectors represent?) *Lots of C++ and multithreading questions to see if candidates understand it - "what is a virtual function, and what is the overhead of calling a virtual function - what does the compiler generate?", "write me a multi-thread-safe hash table, FUQ to make it fast" These are filter questions that work great on kids directly out of college to people who have been in the industry for 30+ years. If it's a college kid, I'll do 30ish minutes on a single coding question. If it's an experienced veteran in the industry, I may do one or two of the questions, or none and just hammer them on other things. If you can't answer those, then study! They aren't interview far field questions like Google gives, but shit you might do on a daily basis.

4 comments

[–] [Deleted] 1 points (+1|-0)

Very interesting. Interviewing that many people must really get under your skin after a while.

When I interview people, after I go through the knowhow topics, all I want to ask them is "are you gonna be a little bitch. But I can't because HR says it's bad.

[–] jobes [OP] 1 points (+1|-0)

the first 20 or so people it got under my skin, but it ended up just becoming banal at some point. I've interviewed 5 people in a single day before and that might be when it finally crossed that line. I used to be super duper friendly with all candidates, took time to get to know their interests and hobbies, etc. Then I would have to go talk about how shitty of a programmer they were in a meeting with the 4 other interviewers and 3 from HR/Recruiting. It was kind of soul crushing...I had to distance myself from being too friendly in interviews.