Learn AEM fundamentals, understand Java Content Repository and other concepts such as Package Manager, System Console... in AEM. After that, seek to build a complete architecture of AEM based on a real project.
Installing AEM and Meeting System Requirements
Improving AEM Front-End Development Workflow
Associating Editable Templates with Policies
Structuring Page with AEM Experience Fragments
Customizing Pages through Default Example Imitation