Design pattern, general algorithm questions and SQL. What is singleton? Double checked locking. Equals and hashcode. How do you write thread safe code? A short question on how you would tokenize and store strings (hashmap obviously). Basic questions on SQL. What is a join? Primary key?