AEM is a Web Content Management System tool that is used to create websites, apps, and many more. AEM recommends modular development which separates business logic from the presentation layer.
There are many profiles existing in AEM where you can work for:
1. AEM Backend developer: He is the person who works on business logic. For this profile, you need strong Java skills [Core and advanced]. Although this profile does not demand strong front end skills, having a basic understanding of HTML, CSS, JS would be an added advantage.
2. AEM Front end developer: He is the person who works on presentation logic. For this profile, you need strong front-end skills which vary from project to project [basic skills would be HTML, CSS, JS]. Generally, this profile does not demand any backend skills
3. AEM Full Stack developer: He is the person who works on both business and presentation logic which expertise on both backend and front end.
4. AEM QA: He is the person who works on the quality of the product developed. For this profile, you need strong testing skills [automation would be an added advantage].
5. AEM Author: He is the person who does not need any technical skills but the tool [AEM] knowledge to author the content on regular basis.
First things first - select the profile you are interested to work on. Later work on the skills needed.
I would recommend starting from here: https://experienceleague.adobe.com/docs/experience-manager-65/developing/home.html?lang=en. This has an entire developing guide that can help you learn the required skills.
Hope this helps. All the best!
Thanks,
Kiran Vedantam.