This was an unnecessarily long process which ultimately ended in a very abrupt and unprofessional manner.
Day 1 - applied for the position
Day 3 - an email said that I would receive a call to schedule an interview.
Day 8 - got the call and set up an interview.
Day 17 - 1st interview
Interview 1 went well. Spoke with 2 or 3 nice people. Nice office. Spoke about my background and some idle chitchat about mutual interests. more below.
Day 20 - scheduled a 2nd interview.
Day 27 - 2nd interview
Similar to interview 1, followed by a long written exam involving math and other random, sometimes nonsensical things like handshaking technique. Met with at least 1 person who hadn't been involved previously.
Day 42 - background check process began, figured I had the job. Why would you background check someone you don't intend to hire, right?
Day 61 - received a phone call stating they wanted me to come back for an in-person offer; i guess doing it over the phone would be too convenient for me? I expressed concern about having to make a decision on the spot and in person, but I was told I'd have a few days to accept or decline the offer.
Day 63 - After stringing me along for over 2 months, my half offer was withdrawn via email without any explanation:
"We received notification from the hiring manager that he has decided to go another direction in regards to filling this position. Please accept this email as cancellation of your meeting."
I presume a better candidate was found, or maybe they were angry I had the audacity to ask if they could just tell me what the offer was over the phone. How about deciding who you want to hire before scheduling offer meetings and making people think that their job hunt is over? A little honesty goes a long way too.