Some posts overviewing some code architecture patterns I’ve seen being used in one way or another either directly or indirectly through the ideas they bring to the table.
Best to read them in order, since newer concepts are often better understood with the previous ones in mind.
These posts are not about low level architecture nor whiteboard-like systems design. Rather we go over different ways to structure code to make it (hopefully) more maintainable and easier to work with in the long run.
Apart from reading the source material for each architecture, you can go in much more detail in this great series of posts.
Seriously go check that out, it’s great. In the meanwhile:
Have fun!