Erik, a recruiter from Facebook reached out to me on LinkedIn. I
started out with two phone interviews. The first of which focused
specficially on MySQL, the second involved scripting. Both lasted a
little less than an hour. In the second phone interview I used a
web-based shared text editor to show how I'd script up a common MySQL
monitoring tool in my favorite programming language.
A week later I flew down for 5 face to face interviews. The first was
with Erik, the recruiter, who was friendly and took me to lunch at the
Facebook cafeteria. Then I met with the team leader, who asked me
some technical MySQL questions, but was more focused on how I might
fit in with the team, and general working philosophy type questions.
I then met with four other MySQL operations team members. Their
questions focused on MySQL InnoDB scalability + performance issues.
If you understand what most everything SHOW INNODB STATUS shows you'll
be in good shape. History length, purge thread, locks, deadlocks,
insert buffer, durability options, etc. Understand storage hardware,
iostat -x, RAID levels, write caching, etc.
What I loved most about the interview process is that their questions
were focused on real MySQL problems that they deal with every day.
There were no BS questions that are designed to "see how you think" or
other such nonsense. I did not have to estimate how many golf balls
you could fit inside a school bus, or speculate on why manhole covers
are round.
I did my homework for these interviews, and I thought I was well
served by watching Domas and Mark Calahan's youtube videos about the
MySQL challenges they face at Facebook.