Overcommitted | Software Engineering and Tech Careers Insights

Learning a New Codebase: Strategies for Software Engineers | Onboarding Tips


Listen Later

Join Erika, Bethany, Jonathan, and Brittany for a deep dive into one of every developer's most common challenges: learning a new codebase. Based on Brittany's popular GitHub blog post, this episode shares battle-tested strategies for getting up to speed quickly—whether you're joining a new team, switching projects, or contributing to open source.

Working on large-scale systems at GitHub has taught these engineers that you'll never understand everything, and that's okay. The key is knowing where to start and how to build knowledge efficiently while staying productive.

Practical strategies discussed:

  • Starting with a single issue to avoid overwhelm
  • Creating personal documentation as you learn
  • Using pair programming to accelerate onboarding
  • Leveraging GitHub Copilot for code explanation and documentation
  • Reading telemetry and Sentry alerts to understand system behavior
  • Using debuggers to trace code execution paths
  • Setting up 1:1s with engineers, PMs, and designers for domain knowledge
  • Finding good first issues in large codebases
  • Generating entity relationship diagrams from database schemas

Key mindset shifts:

  • Getting comfortable with not knowing everything at scale
  • Understanding abstraction boundaries through hands-on work
  • Distinguishing between lack of experience vs. understanding
  • Recognizing your contribution's place in the larger system

Spicy hot takes segment: The hosts share their biggest code base pet peeves, including outdated README files that don't work, stale TODO comments from years ago, unhelpful PR templates with required fields, and distributed systems that won't run locally.

Whether you're onboarding to a new team, exploring an unfamiliar microservice, or diving into an open source project, this episode offers actionable advice for confident, efficient code base learning.


Links

  • https://github.blog/developer-skills/application-development/how-github-engineers-learn-new-codebases/


Hosts

  • Bethany Janos: https://github.com/bethanyj28
  • Brittany Ellich: https://brittanyellich.com
  • Eggyhead: https://github.com/eggyhead
  • Jonathan Tamsut: https://jtamsut.substack.com/
...more
View all episodesView all episodes
Download on the App Store

Overcommitted | Software Engineering and Tech Careers InsightsBy overcommitted.dev | A crew of overcommitted software engineers