I applied via email, was asked for writing samples and had a phone screening with HR the following day, and a phone interview with the hiring manager on the third day.
The phone calls seemed to go well, and on the fourth day, someone called to set an appointment for an onsite interview a week later. She also emailed me an interview schedule, which I printed and took with me for reference.
Incidentally, I had to fill out their "official" application before the interview. It was not possible to complete the application without stating a salary range. At this point, I still knew only a little about the position - I had not met with the rest of the team, hadn't seen the software or any documentation, and had no details whatsoever about any other benefits. This happens frequently, and I feel that employers don't do themselves any favors by putting applicants on the spot like that. The employers already hold most of the cards. The least they can do is tell us what the insurance will cost before they ask us to name a figure.
The application also limited me to only three references. I can provide a lot more references than that.
Anyway, on the day of the interview, I left my house early, but not early enough. I had severely underestimated the Boston traffic and arrived half an hour late. When I realized that I was not going to be on time, I pulled over to call the office. It was at this time that I discovered that, although the interview schedule listed the office address and the names of my interviewers, it did not include a single phone number. I blame myself for assuming this information would be on there and not taking any phone numbers with me, but I also feel that it's ridiculous that they don't give a number to call. (One of the HR people left a message on my home phone asking where I was. I don't understand why she didn't call my cell phone - I included the number on my application.) I could have called Information for the number, but I didn't want to delay my arrival any longer.
By the time I got to the interview, I was very discouraged and not sure I even wanted to continue. However, every person I encountered that day assured me that they understood and that it was not a problem. I believed them, and began to relax.
I met with the entire writing team and a developer, one at a time. Some of the interviewers asked questions about my resume, while others asked me specific technical questions. Still others used standard "behavioral interview" questions, which I loathe because they are about the past. I don't have a problem with the past, but every situation is different, and it is not safe to assume that I will approach similar problems the same way every time. We grow over time and learn new things that change the way we react - or we should at least aspire to do so. (I was amused, and a little worried, when two of my interviewers asked the same question - how I dealt with a problematic coworker.)
After speaking with everyone, I felt very positive about the experience and the company. Based on our interactions and things that people said to me, I felt that I had made a good impression despite my flustered, late arrival. I no longer cared how long the commute would be or even what the salary range was like - I was excited by the prospect of working with such a positive and likable group on an interesting product using my favorite software tools.
However, when I got home, a rejection email from HR was already waiting for me. There was no explanation or helpful feedback, but it was clear that it hadn't taken them long to decide - and that they didn't want to pretend that it had been a tough decision.
While I do appreciate a speedy interview process and don't like being kept on the hook, it might be better to wait until the day after the interview before rejecting an applicant. Being unemployed is hard enough on the ego; it is that much worse when your skills are dismissed so quickly. Let your candidates go to sleep that night with hope in their hearts. (Also, give them a phone number to contact the office where they'll be interviewing.)