A large repository can feel opaque when you start at its directory tree. Pick one visible user action and follow the code that handles it; this gives your exploration a concrete path instead of a list of files.

Trace one behavior at a time

  1. Run the application and reproduce a normal user flow.
  2. Find the route, component, service, and data access involved in that flow.
  3. Read the related tests and recent commits to see which behavior the team expects.

Keep a lightweight map

Record important entry points, local commands, and ownership boundaries in your own notes. Confirm assumptions with a teammate when naming or architecture alone does not reveal the intended behavior.

Avoid broad cleanup while still learning the system. A small bug fix or focused test can teach you more safely than renaming several layers at once.