Skip to content

Latest commit

 

History

History
231 lines (173 loc) · 5.92 KB

cracking_coding_interviews.md

File metadata and controls

231 lines (173 loc) · 5.92 KB

General Questions

GoF theorem / Design Pattern
SOLID Principle
Experiencia con microservicios y monolitos
Explain I in SOLID
JVM memory model
Horizontal scaling vs Vertical scaling?
Circuit Breaker in Microservices?
Synchronous vs asynchronous protocol in payment systems?
What is the CAP theorem?
JDK vs JVM?
What is REST API?
Have you ever create a programming language?
How does the internet work?
Array vs linked list?
Concurrency Model?
Microservices communication patterns?
Differences of junior and senior engineers?
What is the complexity of binary search?
Do you know some pattern to prevent "cascading failure"? Circuit breaker
List data structures that you know!
Describe concurrency in Java?
What types of architectures do you know/have used in the past?
What would be the steps you would take to debug an endpoint on a web server that is running slow, assuming everything else works??
What languages have you worked with?
What data structures and design pattern do you use?
How would you make a class immutable?
Time complexity of a HashTable, LinkedList, Arrays etc.?
JVM - Working and Heap?
Process and thread - difference and relation?
Deadlock and concurrency?
Observability and logging - basics like what metrics to check etc?
Domain Driven Design?
SQL vs noSQL (where to use each one, differences and trade offs, how to run a migration without downtime)?

System Design Interviews

High-level system design

How would you build the backend for the customer app?
Spotify system?
Design a waze-like system!
Design food delivery system like Swiggy
Bike rental system?
Design Glovo with following scope?
  • User can create account and login
  • User can list restaurants and check menus
  • User can order something from menu
  • User can make payments for the order
  • Restaurants have to accept/reject the order
  • Delivery person has to accept/reject the delivery request
  • Delivery person status should be updated to the user every 2 seconds
  • And then what kind of DB/cache/messaging system would you use etc. You basically need to defend your choice or maybe change it if doesn't look right.

Low-level system design

Bike rental system?
Design Whatsapp with following features?
  • User can send a message to another user or a group
  • A user can create a group
  • Then some extension like what if we want to support multimedia messages etc.
  • Draw class diagram for the problem

Behavioral Questions

Por que trabajar en la company?
What do you know about the company?
What do you expect from an engineering manager?
What i liked the most of being a software engineer?
What impact did you have in your previous company?
What would your former coworkers say about you if we called them?
What was your day to day in your previous job?
Culture/personality questions and how to approach team-solving situations?
Tell me something about you which is not related to work?
What is TDD?
What would you do in a situation if your colleague is not following the recommended practice/process etc?