I have a background in modern web development using Laravel (PHP) and Angular (JS.TypeScript) and feel very comfortable on the front end and back end side of things. I also have Java experience and am comfortable reading and writing it (at least up to an intermediate level). Given this type of background (no experience with JCRs, CMS, etc), what is the most effective way to come to grips with AEM and become proficient with it from a developer standpoint?
I have worked through the getting started material from Adobe and it either leaves much to be desired or I'm just not getting it. Aside from the very basics, I don't feel like I'm taking anything away from the training (in terms of being able to dive into a big existing project and get stuff done). Is this because I don't have a firm understanding of some underlying technologies or something? My goal is to really understand AEM and how it works as well as be able to proficiently develop new functionality while maintaining/fixing existing functionality.
You are right - the AEM Docs are just the beginning of AEM. They teach you how to use the AEM UI and tasks that you can perform from that UI - like uploading Assets, setting permissions, authoring tasks, etc.
However - the community has a lot of information. There are many end to end AEM HELPX articles (we have over 200 and community has many more) that will teach you how to perform specific use cases.
You need to understand many things both on the back end and front end. For example:
Taking the time to explore the content that i have listed and doing them will get you educated enough where you can join our ranks of AEM super users and know AEM enough to pass the certification exam. We have many community experts that started like you and are now certified.