I applied in response to a post on Craigslist, and was contacted via email to set up a phone interview. The phone interview was basically a get-to-know-you conversation, at the end of which the interviewer invited me to an on-site interview. They went ahead and explained that it would include a technical test, and gave a high-level overview of what would be on it. This was great, because I was able to bone up on the relevant bits of coding. The on-site interview was with two managers, and was exactly as the phone interviewer described. It went very well, and I was offered the job within the week.