AEM Developer
40+ AEM Developer Interview Questions and Answers

Asked in Perficient

Q. The client requests a workflow that triggers when an asset is uploaded to generate multiple renditions and notify specific users when the process is complete. How will you design and configure this workflow?
Design a workflow in AEM to generate renditions and notify users upon asset upload.
Create a custom workflow model in AEM using the Workflow Model Editor.
Add a 'Process Asset' step to generate multiple renditions (e.g., thumbnail, web, print).
Use the 'Send Notification' workflow step to notify specific users via email.
Configure the workflow to trigger on asset upload events using the 'Asset Created' event.
Test the workflow with various asset types to ensure all renditions are ...read more

Asked in Perficient

Q. A custom Sling Model is not populating data as expected in the JSON exporter. How would you debug and fix the issue?
Debugging a custom Sling model in AEM involves checking annotations, resource types, and JSON export configurations.
Verify that the Sling Model is correctly annotated with @Model and @Inject for dependencies.
Check if the resource type in the model matches the resource type of the component in AEM.
Ensure that the JSON Exporter is configured correctly, using @Export and @JsonProperty annotations if needed.
Use the Sling Model Exporter debugger to inspect the model and see if it ...read more

Asked in Perficient

Q. The client wants to migrate content from an older AEM instance to AEM as a Cloud Service. How would you plan and execute this migration?
Plan and execute migration from an older AEM instance to AEM as Cloud Service with careful strategy and execution.
Assess current content structure and identify what needs to be migrated.
Create a migration strategy that includes timelines, resources, and tools.
Utilize AEM's built-in tools like the Content Package and the AEM Migration Tool.
Test the migration process in a staging environment before executing in production.
Ensure that all dependencies, such as custom code and in...read more

Asked in Perficient

Q. You are asked to extend an existing component from core, add new fields, and ensure backward compatibility. How will you approach this?
Extend an AEM core component by adding fields while maintaining backward compatibility.
Identify the core component to extend, e.g., 'cq/components/content/image'.
Create a new component in your project, e.g., 'myproject/components/content/image'.
Use the Sling Resource Merger to inherit properties from the core component.
Add new fields in the dialog of your custom component using the same field types.
Ensure backward compatibility by keeping existing properties intact.
Test the n...read more

Asked in Wipro

Q. How can you publish a page along with its Experience Fragments (XF) and Content Fragments (CF) from one AEM Author environment (dev) to another AEM Author environment (prod)?
To publish a page along with XF, CF from one AEM Author to another, use package manager or content sync
Create a package in AEM containing the page, XF, CF
Use package manager to build the package and download it
Upload the package to the target AEM instance and install it
Alternatively, use content sync to replicate the content from one AEM instance to another

Asked in Cognizant

Q. How do you create custom components in AEM?
Custom components in AEM can be created using the CRXDE Lite or Eclipse IDE.
Create a new folder under /apps/
/components Create a new .content.xml file with the component's metadata
Create a .html file with the component's markup
Create a .clientlib file with the component's client-side dependencies
Register the component in the OSGi bundle's pom.xml file
AEM Developer Jobs




Asked in LTIMindtree

Q. What is the difference between AEM Sites and AEM Assets?
AEM Sites is used for creating and managing web content, while AEM Assets is used for managing digital assets like images and videos.
AEM Sites is focused on creating and managing web content, including pages, templates, and components.
AEM Assets is focused on managing digital assets like images, videos, documents, and other media files.
AEM Sites allows users to build and customize websites, while AEM Assets helps in organizing and sharing digital assets across different chann...read more

Asked in Perficient

Q. What is the difference between Content Fragments (CF) and Experience Fragments (XF)?
CF (Content Fragment) and XF (Experience Fragment) are both AEM components for managing content but serve different purposes.
CF (Content Fragment) is used for managing structured content that can be reused across different pages.
XF (Experience Fragment) is designed for managing a combination of content and layout, allowing for reusable sections of a page.
Example of CF: A product description that can be used in multiple product pages.
Example of XF: A hero banner with text and ...read more
Share interview questions and help millions of jobseekers 🌟

Asked in Tech Mahindra

Q. Crop resize worklow, what is procee step and participant step?
Crop resize workflow involves process step and participant step.
Process step involves defining the workflow for cropping and resizing images.
Participant step involves assigning roles to individuals involved in the workflow, such as designers, developers, and testers.
Examples: Process step - defining image dimensions and quality requirements. Participant step - designer selects images to crop and resize, developer implements the changes, tester verifies the output.

Asked in Commerce Pundit

Q. What’s the difference between Object.freeze() and Object.seal()?
Object.freeze() prevents modifications to an object, while Object.seal() allows modifications to existing properties but not adding/removing them.
Object.freeze() makes an object immutable, preventing any changes to its properties.
Example of Object.freeze(): const obj = { a: 1 }; Object.freeze(obj); obj.a = 2; // obj.a remains 1.
Object.seal() allows existing properties to be modified but prevents adding or removing properties.
Example of Object.seal(): const obj = { a: 1 }; Obj...read more

Asked in LTIMindtree

Q. What is the difference between Parsys and IParsys?
Parsys is a standard AEM component for creating dynamic layouts, while IParsys is an inherited version that allows for nested parsys within a parsys.
Parsys is a standard AEM component used for creating dynamic layouts by allowing authors to add components within it.
IParsys is an inherited version of Parsys that allows for nested parsys within a parsys, enabling more complex and flexible layouts.
IParsys stands for Inherited Paragraph System, indicating its ability to inherit p...read more

Asked in Cognizant

Q. How do you create a client library in AEM?
Client libraries in AEM are used to manage CSS, JavaScript, and other assets. They can be created using the CRXDE Lite or the AEM Web Console.
Create a folder under /apps/
/clientlibs Add a .content.xml file to define the client library properties
Add CSS and JS files to the folder
Include the client library in your component using the cq:includeClientLibs node
Use the Granite UI API to load the client library in your code

Asked in Commerce Pundit

Q. What is the difference between editable templates and static templates?
Editable templates allow content authors to modify layouts, while static templates are fixed and require developer intervention for changes.
Editable templates enable content authors to change the layout and components without developer help.
Static templates are predefined and cannot be altered by content authors; changes require code updates.
Example of editable template: AEM's 'Page Template' that allows drag-and-drop functionality.
Example of static template: A hard-coded HTM...read more

Asked in Commerce Pundit

Q. What are closures? Can you give a real-world use case?
Closures are functions that capture the lexical scope in which they were defined, allowing access to variables from that scope.
A closure is created when a function is defined inside another function.
Closures can maintain state across multiple invocations.
Example: A counter function that increments a value each time it's called.
Closures are often used in event handlers to retain access to variables.

Asked in Hexaware Technologies

Q. What is the use of the @Component annotation in a servlet?
The @Component annotation in servlet is used to declare a servlet as a component in AEM.
Used to declare a servlet as a component in AEM
Helps in defining the servlet as a service component
Allows the servlet to be managed by the OSGi container

Asked in Commerce Pundit

Q. What is your approach to accessibility and SEO in AEM?
My approach to accessibility and SEO in AEM focuses on best practices, compliance, and optimization techniques.
Use semantic HTML elements to enhance accessibility, e.g., <header>, <nav>, <main>, <footer>.
Implement ARIA roles and attributes to improve screen reader compatibility, e.g., aria-label, aria-hidden.
Ensure all images have descriptive alt text for better accessibility and SEO.
Utilize AEM's built-in SEO features like metadata management and URL structure optimization.
C...read more

Asked in Hexaware Technologies

Q. Write the code to call the properties of a page in the model class.
To call properties of a page in the model class, use the Page API in AEM
Use the Page API to get the current page object in the model class
Access the properties of the page using the getProperty method on the page object
Ensure to handle null values or default values for properties that may not exist

Asked in Tech Mahindra

Q. What was the latest component you worked on?
I recently worked on a custom carousel component for displaying featured products on the homepage.
Implemented custom logic for fetching and displaying product data
Designed the component to be responsive and mobile-friendly
Added navigation controls for users to scroll through products
Integrated with backend APIs to retrieve product information

Asked in LTIMindtree

Q. What are Touch UI and Classic UI?
Touch UI and Classic UI are user interfaces in AEM, with Touch UI being the modern, responsive interface and Classic UI being the older, desktop-focused interface.
Touch UI is the modern, responsive user interface in AEM designed for touch devices.
Classic UI is the older, desktop-focused user interface in AEM.
Touch UI provides a more intuitive and user-friendly experience compared to Classic UI.
Examples of Touch UI components include the Side Panel, Content Finder, and Respons...read more

Asked in Hexaware Technologies

Q. Explain some annotations that are used in Sling Model.
Annotations used in Sling Model for AEM development
The @Model annotation is used to define a Sling Model class
The @Inject annotation is used to inject OSGi services or request attributes
The @Self annotation is used to inject the current resource
The @Via annotation is used to specify the resource type to adapt from
The @Named annotation is used to specify the name of the injected property

Asked in IBM

Q. What are the ways to invoke a servlet in AEM?
There are multiple ways to invoke a servlet in AEM, including using Sling Servlets, ResourceType-based Servlets, and ServletResolver.
Using Sling Servlets by registering the servlet with a specific path
Using ResourceType-based Servlets by associating the servlet with a specific resource type
Using ServletResolver to dynamically resolve servlets based on request paths

Asked in Publicis Sapient

Q. How can you contribute to Publicis Sapient?
I can contribute to Publicis Sapient by utilizing my AEM development skills and experience to deliver high-quality solutions.
I can work on AEM projects and deliver them on time and within budget.
I can collaborate with cross-functional teams to ensure seamless integration of AEM with other systems.
I can provide technical guidance and support to junior developers.
I can stay up-to-date with the latest AEM trends and technologies to ensure that Publicis Sapient remains competitiv...read more

Asked in Workday

Q. Servlet types and which is better
There are two types of servlets: GenericServlet and HttpServlet. HttpServlet is better as it provides additional functionalities for handling HTTP requests.
GenericServlet is a protocol-independent servlet that can handle any type of request.
HttpServlet is a subclass of GenericServlet specifically designed to handle HTTP requests.
HttpServlet provides additional functionalities like doGet() and doPost() methods for handling HTTP GET and POST requests.
HttpServlet also provides m...read more

Asked in LTIMindtree

Q. what is msm and how its work?
MSM stands for Multi Site Manager, a feature in Adobe Experience Manager (AEM) for managing multiple websites.
MSM allows for sharing content, templates, and components across multiple websites in AEM.
It helps in maintaining consistency and reducing duplication of effort in managing multiple sites.
MSM enables the creation of live copies of content from a source site to target sites, allowing for easy updates and synchronization.
It provides tools for managing the relationships ...read more

Asked in rtCamp Solutions

Q. What is a Single Page Application?
Single page application is a web application that loads a single HTML page and dynamically updates the page as the user interacts with it.
Loads content dynamically without refreshing the entire page
Improves user experience by providing a seamless and fast browsing experience
Utilizes AJAX, JavaScript, and frameworks like React or Angular
Examples: Gmail, Facebook, Twitter

Asked in Cognizant

Q. Explain the AEM implementation in an existing project.
AEM implementation involves integrating Adobe Experience Manager into an existing project to manage content and digital assets.
Analyze current project requirements and identify areas where AEM can add value
Integrate AEM with existing systems and databases for seamless data flow
Migrate content and assets to AEM platform while ensuring data integrity
Train team members on AEM usage and best practices for content management
Implement custom components and workflows to meet project...read more

Asked in Infosys

Q. What is AEM and its architectural stack?
AEM (Adobe Experience Manager) is a comprehensive content management solution for building websites, mobile apps, and forms.
AEM is based on a Java content repository (JCR) called Apache Jackrabbit
It uses Apache Sling as a web application framework
AEM includes a powerful component-based architecture for building web pages
It integrates with Adobe Creative Cloud for seamless content creation and management
AEM supports multi-site management and personalization capabilities

Asked in Systems Plus

Q. What are some examples of production support tasks you have handled?
Production support involves maintaining and troubleshooting software applications in a live environment.
Monitoring application performance and availability
Resolving technical issues and bugs reported by users
Implementing hotfixes and patches to address critical issues
Performing regular maintenance tasks to ensure system stability
Providing technical support to end users

Asked in Cohesity

Q. How do you create editable templates?
Editable templates in AEM allow authors to create and manage content dynamically using a flexible structure.
Navigate to the AEM Sites console and select the 'Templates' section.
Create a new template by selecting 'Create' and then 'Editable Template'.
Define the structure using the Template Editor, adding components like text, images, and forms.
Set policies for the template to control which components can be used and how they behave.
Save and activate the template to make it ava...read more

Asked in Cohesity

Q. Tell me about your past projects.
I worked on various AEM projects, focusing on content management, integration, and user experience enhancements.
Developed a multi-site AEM solution for a global retail brand, enabling localized content management.
Integrated AEM with third-party APIs for real-time data updates, improving user engagement.
Implemented custom components and templates to enhance the user experience and streamline content creation.
Migrated legacy content from a different CMS to AEM, ensuring data in...read more
Interview Questions of Similar Designations
Interview Experiences of Popular Companies





Top Interview Questions for AEM Developer Related Skills



Reviews
Interviews
Salaries
Users

