After contacting by a recruiter, he set up two 45 minute phone interviews for me.
They are just like two technical interviews.
(1) Both interviewers are from India and they all got strong accent, especially the second one. I have a hard time in understanding their words.
(2) One of the interviewer refused to use an online editor together even I suggest it. He actually ask me to write a "complete" java codes on a paper first and then read "every letter" to him line by line. Seriously? Some how I believe he wanted to waste our time, why? Anyway, I only have to answer two problems.
(3) Following (2), I believe the second question he threw to me was both an algorithm but also a brain-teaser one, which I don't like. I ask him for hint but he refuse to disclose the optimal answer (I will post question below).
(4) The other interviewer, he asked all tech coding problems, which are mostly short and intuitive. But after answering five questions correctly and quickly. We still have about 15 minutes left and then we chatted until the end. I think this is good sign for me because it means that I'm doing well. But honestly I prefer someone push me to the limit and give me a compensation then based on my skill level. I feel that I was treated like a under but actually I'm almost complete my PhD. Other company send manager / PhD to beat me (everyone can be beaten eventually), but somehow I think the interviews are too easy so that I don't think they will gauge my skill level clearly. Thus, I an worry that they would NOT give me a PhD-level pay. (Probably I apply for the wrong position)
Anyway the overall feeling is okay. The question are all coding & problem solving types. No O/S questions or DB questions.