Round 1:
- Design a File System. The interviewer was looking more for the data structures I would use, if I have to build my own File System.
- Design a Text Editor. Again a DS + Design question. So need to explore various features of a Text editor and best approach to address them all.
- If that text editor is on Cloud (Something like Google Docs), how would you manage Concurrent scenarios, when multiple users are operating at the same time.
- Design an Authentication system for a multi-tenant environment. Started out simple, and increased the scope and complexity in terms of scalability.
- Design a server without using 3rd party tools like tomcat etc.
- Coin Combination problem (Dynamic Programming).
- Some questions on applications of Queues and Microservices.
- Design a Chess Game. It's an OOAD question.
- Design an approach for Amazon Flash Sale. How to deal with Contention in a Scalable and Concurrent Environment.
- Mostly behavioral questions like why do you want to switch, about your current team, role and responsibility, day-to-day activities, innovation, how do you rate yourself in javascript, java etc.
- Some basic questions on DB design, as I told I don't have much of an experience in that area.
- Design a command line which can operation various commands over a file system like: mkdir, touch, cd, cd.., ls etc.