Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How do you recommend preparing for technical interviews?
1 point by Osiris on March 22, 2014 | hide | past | favorite | 1 comment
I was recently laid off and I'm back in the job market for the first time in a number of years. I have several technical interviews coming up.

One (Amazon) specifically mentions reviewing basics like data structures, algorithms, etc. I don't have a formal CS background, so I feel unprepared.

What resources, techniques, etc. do you recommend to prepare for technical interviews?




There are many kinds of technical interviews, and the optimal way to prepare for each is pretty different. So the first thing I'd do is try to figure out how the interview system for any given prospective employer works.

Some places just ask relatively formulaic questions that you can just prepare for with a couple of web searches. Visit a random page for 'technologyX interview questions', and you'll cover that kind of technical screening. That said, I personally consider that an employer that resorts to that kind of interview is probably not really all that good at hiring, and a company that isn't good at hiring is rarely a company worth working for.

Another common kind of technical interview will, instead of going through random technology questions, follow a similar pattern but with more 'book questions' than practical questions. Algorithms and all that. While this kind of interview is harder to game than the first, it's still IMO relatively low quality, because it has to either be very basic, or rely on information that, if actually needed on the job, you could just figure out by going to a reference. It's not as if there's that much to gain by having employees that have memorized The Art Of Programming. What I really want, algorithms-wise, is someone that can research an algorithm, or choose one from some alternatives. I do not care if you do not know how to build an optimal quadtree to calculate collisions in 2d space: What is valuable is that if I tell you that you should calculate said collisions, you can actually find an algorithm that works, and could explain it if asked.

So all in all, that kind of technical interview if often a crapshoot, as you can never know exactly which kinds of algorithms the interviewer will be interested on that day. Which is why the best you can do to prepare for that kind of interview is to just figure out what specific kind of questions are going to be asked.

And finally, there's my favorite kind of technical interview: Actual live coding, either from a well defined problem statement, or by working on an existing codebase, which one hopes has been handed to you a little bit in advance. This approach is straight out of Peopleware: You'd not hire a juggler if you've not seen him juggle, right?

So, in short. depending on the interview type, either try one of the many random sites on the internet that dole out technical questions, read some basic algorithms book, or if handed a codebase, study the heck out of it.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: