Round 1: Hiring Manager Round (usual questions about the work done so far, tech used, challenges faced, trade-offs, experiences, etc)
Round 2: Coding Round
You are given the schedules of two individuals, each represented by a list of intervals where they are busy.
Your task is to find a common time slot where both individuals are available for a meeting.
Write a code that takes the schedules of the two individuals (schedule1 and schedule2) and the duration of the meeting (duration) as input,
and returns a list of time slots where both individuals are available for a meeting of the specified duration.
Notes:
Each schedule is represented as a list of intervals, where each interval (start_time, end_time).
The time is represented as integers, where 0 represents the start of the day and 1439 represents the end of the day (24 * 60 - 1).
Round 3: Data Structures and Algorithms
1. How would you determine if a linked list is palindrome or not, without storing it's values in any other variable for referencing.
2. Suppose there is map and I have two people's coordinates on the map, in what all ways can I find if there is a route present. Which one would you prefer over the other.
2a. Comparison between Dijkstra's algorithm and A-star algorithm and their uses.
3. Suppose there is a Kafka topic with 3 partitions, and there are 3 consumers. What will happen if the number of consumers are increased to 10 for increasing the performance.
4. Suppose we have a central Redis which is being accessed by multiple users. I want to implement a security mechanism such that the keys set by user1 should not be accessible by anyone else. How can we achieve this.
5. How would you design a task scheduler
5a. Design this without using kafka
5b. Design this without using DB (use in-memory variables). How would you optimise this
Round 4: Module Design Round
Microservices based website experiences heavy traffic during Holidays. The application consists of a various microservices including a web server, database and other services. It is a dockerized application that uses Kubernetes for orchestration. High availability and reliability of the product must be ensured.
Round 5: Cultural Fit round