I applied online for this job. After a few days, I received an email to schedule a technical interview over Hangouts. The interview lasted about an hour and I was first asked about my background and very basic questions on Java. After that there was a coding challenge of average difficulty.
A few days later, I received an email for another technical interview in the company's offices.
This interview lasted about 2-2.5 hours, so I had to take a day off from my work.
Again, I was asked some basic questions on Java. There was also some code to review and find errors and write some code (both on paper) of average difficulty. There were also some theoretical questions regarding algorithm complexity and functionality.
Besides that, we also discussed my background, my goals and I was informed about the company and the role I applied.
There was a single question for SQL knowledge.
The final step was another technical interview, over Hangouts that lasted 2 hours.
I was asked to implement the solution for 2 problems with average to difficult difficulty.
While I was implemented the solution, we also discussed how to approach the problem, which I found really good from the interviewer's side.
A few days later, I received a slightly rude email informing me that they will not proceed with my application.
I asked for some feedback, but never received an answer, which I find really insulting.