A recruiter reached out to me on Linkedin, then I accepted to take part in the interview.
The first round was phone interview, he asked about myself, my working experience, my leadership and some multiple choise questions on android (asyntask, activity life cycle, services...) then I was moved on to the next round. He was very nice.
The second round was about coding, At the beginning of this round, I was asked to answer some android questions in 5 minutes
- AlarmManager vs Jobschedule
- Parcelable vs serializable
- What cause ANR, how to prevent it.
Then I was asked to resolve two easy problems. You can find them on leetcode
- Merge two sorted array
- Find k smallest elements in array
The Onsite round includes 4 interview
- 2 coding interviews: linked list, hashtable, binary tree. If you rehearse carefully all problems, especially binary trees on leetcode, you can pass it. I didn't practice well, I code some binary problems on leetcode with facebook tag except one then the interview question went into that question. That was very pity, I saw that problem but I didn't try to code it. I also gave the accepted solution but it takes time to think and explain to the interviewers, they seem want me to give the solution as soon as posible
- 1 beavior question
- 1 system design interview: I was asked to design messenger on android side. I get positive feedback at this round as I used to implement application like this. I think the HR tried to arrange suitable interviewer and interview question that match my CV. They was very kind, they really wanted me to pass but I failed because of coding interview. I felt very ashames because they are very good and dedicated.