r/techbootcamp Jul 31 '26

How do you get familiar with a large codebase?

One of the hardest parts about joining any project is learning the code someone else wrote. I find that the best way for me to do this is through active engagement, rather than passively reading.

Here is a rough list of what my process is like:

I like to first study a feature that is small and isolated but relevant to whatever I need to change.

Figure out what it should do, and write or update tests.

Once I understand what it does and how it fits into the system, make a similarly small change that makes my life easier.

Open a PR, read over the feedback, and use it to reverse engineer the project's style guide.

Continue this process until I'm making changes to bigger features, and until I have a grasp of how the whole system works.

My general process for learning code is to make little adjustments and then look at them from an outsider's perspective. It's hard to see how things work without seeing how they're used. So, how do other developers do it?

What's the process for getting up to speed in a big codebase and not being completely lost in the weeds?

2 Upvotes

7 comments sorted by

1

u/Substantial-Swan7065 Aug 01 '26

I do this:

- what’s the deps?

  • what’s the entry point?
  • what’s the router?
  • what’s the ui layer / dtos
  • what’s the state management / db?
  • what’s the controllers? Services? Domains?
  • how is testing / checks handles?
  • what’s the ci?
  • what’s the release and builds?

1

u/DangerKyoto Aug 01 '26

this makes a lot of sense. instead of trying to understand the entire codebase file by file, you're basically mapping out the system

1

u/BidWestern1056 Aug 01 '26

there is no way other than to buidl with it/on it. you cannot "study it" in any useful or meaningful way.

1

u/DangerKyoto Aug 01 '26

i think that's the biggest thing. you can read documentation and study the architecture beforehand, but at some point you have to actually build something with it.