I applied the position online and one day later I received a phone call from a recruiter. He told me a little bit about their company and set up a phone interview with me. Then, on the interview day, some tech stuff called and ask me some basic questions about Java. Interface vs abstract class, collection, overload vs override, set and list, etc.