← Timeline

I’m Michael. I was a principal engineer at Facebook from 2009 to 2017, where I was the top code contributor of all time and also conducted hundreds of interviews. I recently co-founded Formation.dev, an engineering fellowship that trains and refers engineers directly into big tech. Ask me Anything!

r/IAmA

u/CodeTinkerer wrote (the comment Michael replied to):

A few observations * Given that interviews are different from what you do on the job, how do you prepare? I know they can be quite different. I did one interview years ago where they were still doing brain teasers (Microsoft). One where it was kind of a cross between coding a

u/michaelnovati replied · ★ FEATURED
Hey! * Preparing for interviews is a challenge for most people with experience. The top tier companies general ask similar style data structures and algo questions so if you practice those, you can cast a wide net. The puzzle style brain teasers are less and less common now a days though. * If you are really rusty, try a book like Cracking the Coding interview to kind of get back in the swing of things. * I'm a firm believer of the ask as many questions as possible bucket until people tell you are annoying. Most of the failures I see early on are people not asking questions and wasting too much time. So if you ask too many questions people might be a little annoyed but you'll be way farther ahead. * That said, you should still genuinely try to figure something out first and THEN ask the question about what you did, not about the original problem. e.g. Don't ask "how do I make a branch in git", instead, "I made a branch but I'm getting this error, and I tried what it said in the error and I got this other error, do you have any quick thoughts what I'm doing obviously wrong"