First HR called, but just chat, then hiring manager called for 5 minutes java and http related questions. If he thinks fine, then he will send 3 Java coding questions. The problem is the questions were not so clear, e.g, it specified only define one class BinaryTreeNode, but use this to present a tree. Tree itself should be a class. I finished with some getter/setter as standard, and traverse the tree as well as requested, but the hiring manage felt I wrote too much code. Second question was about only allow two threads to run a method. So I used static volatile to define a variable, but the hiring manager could not under volatile, and counted my answer totally wrong.