Home / Companies / GitHub / Blog / Post Details
Content Deep Dive

How GitHub engineers learn new codebases

Blog post from GitHub

Post Details
Company
Date Published
Author
Brittany Ellich
Word Count
1,105
Language
English
Hacker News Points
-
Summary

Navigating a new codebase, regardless of one's experience level, can be a daunting yet essential task in a software engineer's career. Brittany Ellich, a GitHub software engineer, shares a collection of strategies to streamline this process, which she gathered during her own transition within GitHub. Key approaches include hands-on code exploration through tackling "Good First Issues" and leveraging tools like GitHub Copilot, using data-driven insights from telemetry, and engaging in exploratory testing. Collaborative learning is emphasized through pair programming and understanding the business and technical motivations behind tasks, while monitoring team communications aids in grasping failure patterns and response strategies. Documentation plays a critical role in solidifying knowledge, with suggestions to create personal notes, technical maps using tools like Figma, and command cheat sheets. Additionally, Ellich advocates for learning by teaching, recommending writing internal guides and contributing to official documentation as methods to both verify and share understanding. Ultimately, she highlights the importance of documenting one's learning process to identify knowledge gaps and aid future team members.