Contacted by phone after an employee saw my resume. Called in to interview within a few days. Panel of 4 for a two hour interview. Received a call two days later with a job offer.
The first phone call was a short phone screen: asked about my resume and then a few technical questions on OOP. They decided to continue forward and scheduled an in-person interview (details sent in an email for confirmation).
I interviewed with a panel of four people, one of who was the manager. We took turns asking about my resume and myself. After maybe about 20-30min, they moved onto technical questions. The team asked 4-5 smaller questions and then the manager moved us to the white board for another 4-5 questions. I struggled a few times (the questions were fairly simple in hindsight) as my nervousness increased, but they were kind and helpful whenever I was stuck. I remembered to ask questions and to comment on the things I wrote or what I was thinking. In turn, I was given tips and hints.
Having completed the run of technical questions, the manager and I discussed job details and then he showed me around the office/work area and introduced me to the team I would be working with. The in-person interview was roughly two hours long.
A few days after the interview, I received a call with an offer. They really enjoyed the interview with me and even raised the initial salary they had offered by quite a lot. However, I opted to decline as the job position wasn't one that I was looking for.
There were two downsides: they never told me the job title until I asked (and they had trouble describing the details of the job) and they rushed me for an answer to their offer (I was given one day to think about it) when I told them I was also interviewing with another company.
But, all in all, a nice and fast experience.
Attire: Business Casual