Initially I needed to fill out some online application, which included ALL information about me even full SS#. So, I actually provided id sensitive information to unknown company, which were scary.
After this, I had 45 minutes phone interview with manager and his assistant. During this interview I realized that both of them never heard about ETL tools and Data Warehousing. It was strange because position name was Database Software Engineer.
In few days headhunter wrote me that they want me for face to face interview. I asked if it would be some technical test and he told me that definitely no. However, it was not true.
It was the longest interview in my life: it took eight and half hour including lunch. First hour I had a test. It was two algorithm questions with writing code and some theoretical C++ questions. During another 30 minutes one of employee showed me their factory. He provided me a lot of details and it was really boring.
After this , I met 7 employees from department one after another. Some of them just asked me what experience I have ( without any specific technical questions). Another people asked me about data modeling , querying , approaches. All of them were smart, polite and with sense of humor. However after 5 hours of continuous conversations (even during free lunch) I was very tired . However, they still continued ask, ask and ask. Manager came the last, when I was completely exhausted. However, he still required some active answers from me.
At the very end manager said me that I am the first candidate they met. So, they need some time for answer. After three weeks head hunter wrote me that "it just was not a strong enough match for their needs at this time".
I realized that I don't want so long interviews in the future. If they want candidate to meet every one, they need to split this interview to two days. In this case, they possibly will not call you to the second interview and save their time.