1) Technical round
- Explain me any one project / challenges / team size
- How did you solve the problem of concurrency in your project.
- Which design patterns did you used ?
- Design LRU cache
- Ways to synchronized in memory cache with each other
- Write custom putIfAbsent by extending HashMap. Also handle concurrency/correctness
2) Technical round
- Best data structure for faster searching of string – Trie
- Optimize the size of trie by giving some other DS – Ternary search tree
- Trie vs Ternary search tree complexities
- Range queries – Segment tree
- Check if Tree is foldable or not
- Have you ever worked on any search engines ?
3) Technical round
- Discussion about project
- Use of serialversion UID
- Write hashmap implementation
- Given a array of numbers. Identify maximum difference between 2 numbers such that arr[x]<arr[y] and y>x
- Suggest design where multiple threads can access common piece of code
- Print binary tree in vertical order
4) Hiring manager round (Video call | BlueJeans)
- Detail discussion about one of the project
- Your role in project
- Last code review suggestions
- Interaction with product manager directly for whole project ?
- Two phase locking in sql
- ActiveMQ rollback strategy
- Identify slow queries and how to optimize them
- Conflicts in code reviews