So many software engineers mess up when they're trying to learn code by bringing over a bad habit from school: Studying. This is simply not how software works, and this video's here to explain why.
Here are the core points:
- Reading code and documentation is ineffective - You can't purely read your way towards a good understanding of a codebase; it will get you 10-15% of the way tops. Software is fundamentally about doing - The actual learning begins when you jump in and start playing with the code. On top of all this, it's much better to get a high-level understanding of the codebase by asking your teammates for it instead of trying to infer it yourself from raw reading.
- Documentation gets worse the better the company is - Good software companies are fast-moving. This is a big reason why FAANG is successful: They are able to still move quickly despite their immense size. Because of this, documentation is rarely kept up to date due to how fast the codebase evolves. In fact, excessive reading of documentation may actively harm you if it contains legacy patterns that aren't accepted at your company anymore.
This clip is from our masterclass on how to succeed at a new team or company as a software engineer. You can watch it here: [Masterclass] How To Succeed At A New Team Or Company As A Software Engineer
So now that you know how NOT to learn a codebase, here's some resources on how to actually learn a codebase: