• Start from easier ones, e.g., Spring Boot
  • Read the dependency first, e.g., kafka -> zookeeper -> java.concurrent
  • Create a hello world, add debug points. Go top-down upfront only after you are familiar with the codebase
  • Try NOT to understand every single line, just focus on the most important flow
  • Draw graph
  • Need to repeat this a few times to trully understand it