After submitted application: One phone interview by HR person; face-to-face interview by HR person; technical test; peer (technical) interview, in my case actually a phone interview; reference check, salary and start date negotiations, hiring.
Interestingly, in the first face-to-face interview, it was said that if the test was good, I would not have to sit another technical interview, which turned out to be untrue, I did need a technical interview after the test.
In this description, I cover only the second (technical) interview.
I happened to have been taken down as a Java developer while I came more from a .Net background (my Java was 5 years ago), and so was interviewed by a Java developer, which made the interview difficult. The interviewer only asked very high-level, abstract questions, and still it was difficult to find common ground.