AEM Sites Developer Professional study materials
AEM Sites Developer Professional study resources

AEM Sites Developer Professional study plan

AEM Sites Developer Professional · Give each week a clear focus.

8 weeks · About 7 hours per week

Week 1

Sling, OSGi, and JCR

  • Map the Sling request pipeline from URL to rendered output by tracing a resource path through the resource resolver, servlet/servlet-resolution rules, and the selected rendering script

  • Configure three OSGi components using Declarative Services annotations (@Component, @Activate, @Reference) and change one configuration value at runtime through the Web Console

  • Define a custom JCR node type with at least four properties and one mandatory property, register it in a CND file, and create a node of that type in CRXDE

  • Explain and demonstrate the difference between a hard reference and a weak reference when deleting an OSGi service consumer

Your checkpoint

A one-page written cheat sheet of Sling resource resolution order plus a working local AEM SDK bundle containing the three tuned OSGi components

Week 2

Sling, OSGi, and JCR & Templates and component development

  • Build two Sling Models: one adapted from Resource and one adapted from SlingHttpServletRequest, and inject values with @ValueMapValue, @ChildResource, and @OSGiService

  • Write a servlet registered by resource type and verify its output with a curl request in the browser against a local instance

  • Author a proxy component over a core component and override one HTL block without copying the whole script

  • Document the JCR namespaces, mixin types, and index rules needed for a custom query you write with the QueryBuilder API

Your checkpoint

A submitted repository containing the two Sling Models, one resource-type servlet, and one proxy component, each with a short README explaining its binding

Week 3

Templates and component development

  • Create an editable template with at least three policy-driven component restrictions and two responsive layout configurations

  • Implement an HTL component using data-sly-use, data-sly-list, data-sly-resource, and the contextual resource parameter, with no scriptlets or JSP

  • Build a dialog with a multifield, a nested composite field, and a validation rule, then verify the persisted JSON in the JCR

  • Register a client library with categories, dependencies, and embed rules, and confirm the generated CSS/JS bundle through the HTML clientlib include

Your checkpoint

One custom page template plus two custom components committed as a content package that installs cleanly on a fresh local instance

Week 4

Templates and component development & AEM Sites architecture and administration

  • Configure MSM on a blueprint-to-live-copy relationship, roll out one page edit, and break the inheritance on a single component to observe the detached state

  • Create a language copy and link it to a translation project to show the copy structure

  • Add two custom workflow steps or launchers that trigger on page activation and log the payload

  • Map how template policies, content policies, and the design configuration differ between static and editable templates

Your checkpoint

A sandbox site with one blueprint, two live copies, and one language copy, documented with screenshots replaced by written step-by-step reproduction notes

Week 5

AEM Sites architecture and administration

  • Configure replication agents for author and publish, including one custom agent transport handler, and verify with a test connection

  • Build a user group structure with three groups, assign ACLs at /content and /apps at differing privilege levels, and prove the effect with a test user

  • Set up two distinct maintenance tasks such as workflow purge and version purge and record their default configuration

  • Explain the difference between an author-only and publish-only service and list the bundles you would verify after a package install

Your checkpoint

A written runbook of eight administration tasks with exact UI paths and the expected result for each

Week 6

Client-side development and asset handling

  • Implement a client-side component that lazy-loads its JavaScript from a categorized clientlib and measures render impact in the browser performance panel

  • Serve three image renditions through the image component with a defined smart-crop configuration and compare delivered asset dimensions

  • Configure a dynamic media or asset metadata schema with custom fields, then upload an asset and verify the extracted metadata

  • Write a component that consumes the model JSON endpoint (model.json) and renders a list client-side

Your checkpoint

A single demo page combining the client library, rendition gallery, custom metadata schema, and JSON-driven list, with a one-page performance note

Week 7

Caching, Dispatcher, and deployment

  • Write a Dispatcher farm file including a cache rule set, a filter allowlist, statfileslevel, and an invalidate section

  • Simulate author activation triggering a POST to /dispatcher/invalidate.cache and confirm the correct paths are flushed

  • Set cache headers and TTL behavior for HTML versus clientlibs and document which one you would not raise and why

  • Stand up a local Dispatcher with Docker in front of a local publish instance and verify a cached versus uncached response via response headers

Your checkpoint

A working local Dispatcher configuration, committed with a written verification log showing one cached hit and one successful invalidation

Week 8

AEM Sites architecture and administration & Templates and component development & Sling, OSGi, and JCR & Client-side development and asset handling & Caching, Dispatcher, and deployment

  • Retake a timed 60-question practice set across all five domains and log the reasoning for every missed item

  • Re-derive from memory the Sling resolution order, editable template to policy relationship, and Dispatcher invalidation flow

  • Review every flagged weak area from weeks 1 through 7 and rewrite the corresponding cheat sheet section

  • Practice explaining three architecture trade-offs out loud in under two minutes each

Your checkpoint

A final one-page condensed reference sheet plus a scored practice log with each missed question mapped to its domain

Milestones

Week 2: Can trace a URL to a rendering script and name the three OSGi component states without notes

Week 4: Two custom components install and render on a clean instance from your own content package, with no console errors

Week 6: Delivery of a page whose client-side assets and image renditions are served correctly, with measured load behavior documented

Week 8: Score at or above 80 percent on a timed 60-question mixed-domain set and have zero unresolved flagged items