90% Answers (and when they're wrong)
standalone-sysadmin.com
standalone-sysadmin.com
However, if the company has a proper structure in place and actually plans things, maybe those qualities aren't quite as important... And maybe the employees would like it there better.
Companies forget that interviews go both ways. If you prove to me in an interview that your company is really messed up, I won't work there. If you take me on a 'lunch interview' and judge me on whether or not I salt my fries before tasting them, I won't work there. That's not a valid test of whether I do proper research or not. It just happens that there is -never- enough salt on fries, so I just add some.
And if you make me 'ask for the job' by calling you back and inquiring, even though you stated you would call me, forget it. I don't play games, and I don't understand why you'd want to hire people who do. Since you've made sure to select an entire staff that plays games, I'm sure I don't want to work there.
Having said, that if the position he was interviewing for really, really needed to do those 2 tasks on a regular basis, he should have known the best way to handle it and what questions to ask to figure out the proper solution.
After discovering rsync wouldn't work I would have just said "I don't know, I've never worked at that scale," and reframed the conversation from one where I'm trying to guess the right answer to a conversation with more give-and-take.
In an interview though I'd tend to always avoid 90% answers, or to qualify them carefully. I expect interviews to have "trick" questions or to lead on to interesting discussions, so any question with an answer as simple as "use mysqldump" would raise a red flag in my mind.
The last four job interviews I've landed really just wanted to know if I could do the job and as such, the questions were very straight forward and didn't test for anything that wasn't actually asked in the question.
INTERVIEWER: What is your experience with source control systems?
ME: I use Git for my personal projects and I have used Subversion and Perforce on professional projects in the past.
It's not as if they are trying to tease out how active my Github account is. They just want to know if there is going to be additional ramp-up time if I were to be hired.
The second one would be a mix of xtrabackup and/or lvm (or san) snapshots on a slave.
I've read this particular guy's blog a bunch of times before (its thin pickings out in the sysadmin blogosphere). His rush to the 90% answer bias is almost certainly a byproduct of his work environment, a small shop where ordering laptops is more a part of his day than performance tuning the website infrastructure. When your job covers a large variety and volume of relatively low-end problems, you would of course develop that reflex.
MySQL: replicate the database to one or more slaves, and either run mysqldump on a live slave (which should have sufficient capacity, since it's only keeping up with the INSERTs on the master and not handling queries) or take the slave offline, make a backup (EDIT: somehow - I don't really know MySQL all that well) and then make it catch back up (which may not be easy).
rsync: sensible people only create paths of the form f/s/myfile if they are expecting a ton of files. In this case, keeping track of file attributes may be extremely valuable (if UNIX ctime hasn't changed, rsync doesn't need to look at the file at all, which saves a lot of disk I/O.) (EDIT:) I just remembered that rsync tries to preserve hard links, too - and therefore remembers the inode of every file. I'm pretty sure that you can run a machine out of memory with enough small files.
If you're going to ask probing questions, you have to probe correctly. Rsync is the correct answer, and mysqldump is the correct answer, for the problems as given. If you want those not to be the correct answer because you're fishing for something else, you have to be specific as to why not: "But suppose the patient has lupus, and that treatment will kill her, what would you do THEN?"
These are interviewers that are blowing the setup for their joke and then expecting you to laugh at the punchline. If you're going to be a "smarter-than-thou" interviewer, you have to at least set your questions up properly so that "rsync" and "mysqldump" are not, in fact, the correct answers.
Need a web app? Rails. Want a database? MySQL. Need queuing software? AMQP. Version control? Git.
And giving these answers in an interview is...alright - you don't want to hire people that aren't familiar with what's happening in technology, but you do want to show that you're somewhat of a critical thinker. Most good developers I know ask tons of questions and say very little.
If you can model that thought process during an interview - web app, eh? Does it need to talk to a DB? Are the requests short or long-polling? How are you hosting it? How much view work is there? Will there be an API layer? - that shows you know how to research problems and solve them correctly.
This isn't to say I wouldn't hire someone who answered my web app question with a simple, "Rails," but it immediately starts to raise red flags for me.
In the context of a normal conversation, that is the correct answer. If someone is ignorant enough to ask such a question, they probably have the sort of MySQL instance where mysqldump will perform adequately. If they don't, at least they'll figure it out soon enough. On the other end of the spectrum, you might spend an afternoon holding forth on the merits of various backup strategies only to find out they really just needed the name of the dump command. 90% solutions are good starting points in real life.