I might look a bit rough in some of these videos—just the typical CS major grind—but my study strategy was to record myself explaining concepts and solving Leetcode problems. It helped me get comfortable with thinking out loud, which was crucial for the actual interview!
Technical:
- Coding problems and algorithms:
- Data structures:
- What is a string?
- Recommend reviewing sorting algorithms.
- Questions about stacks and arrays.
- What is the best data structure for a phone book with names and phone numbers?
- Store a list of phone numbers, names, and addresses.
- System-related questions:
- From a hardware perspective, how would you implement the Kinect?
Design:
- Conceptual design problems:
- How would you organize a phone book?
- Design a phone book.
- How would you design a fridge for a blind person?
- Design a vending machine for a blind person.
- How would you design an elevator for a school where certain floors are restricted to students?
- How would you design a coffee maker for space?
- Design a gardening app.
- Design an ATM for kids.
- Improvement questions:
- How would you improve Microsoft Teams?
- What is a feature about Microsoft Word that you do not like? How would you fix it?
- What Microsoft product do you use, and how would you improve it?
- Testing and validation:
- How to test a vending machine?