It’s all about abstracting things away. I have a very good memory for where things are (at least I did when I had to make everything manually...) and it mainly comes down to:
making sure the project has a logical, consistent and above all well know structure
making sure the code is well split up into logical and consistent functions etc.
not surprising anyone with where things live
The last point is a rephrasing of the previous, and it’s also why a lot of more experienced devs are very nitpicky about where things should live and what they should look like. It massively reduces what you have to remember at any given point in time.
It’s all about abstracting things away. I have a very good memory for where things are (at least I did when I had to make everything manually...) and it mainly comes down to:
making sure the project has a logical, consistent and above all well know structure
making sure the code is well split up into logical and consistent functions etc.
not surprising anyone with where things live
The last point is a rephrasing of the previous, and it’s also why a lot of more experienced devs are very nitpicky about where things should live and what they should look like. It massively reduces what you have to remember at any given point in time.