Acquia Academy

Acquia Certified Drupal 10 Front End Specialist

This is the study guide for the Acquia Certified Drupal 10 Front End Specialist Examination.

This guide explains the exam blueprint, breaks down knowledge domains, and helps you get familiar with the nature of questions asked in the exam. It also provides helpful steps to prepare for the exam and links to further resources for study and preparation.

About the exam

  • Exam name: Acquia Certified Drupal 10 Front End Specialist
  • Exam duration: 90 minutes
  • Exam length: 60 questions
  • Pass/Fail mark: 68%
  • Available languages: English, Japanese

The purpose of the Acquia Certified Developer Front End Specialist (D10) exam is to validate the skills and knowledge of a Drupal Developer in the area of Front end Development (Theming). This exam is based on the Drupal 10 platform.

This exam validates a candidate’s ability to:

  • Design, develop and deploy Drupal 10 based solutions focusing on front end topics
  • Understand the core Drupal 10 basic architecture and best practices for site building and theme development
  • Develop and implement new Drupal 10 themes
  • Customize and extend existing Drupal 10 themes

The basic knowledge and skills required include the following areas and objective components:

  • Professional experience using Drupal 10 technology
  • Setup and configuration of Drupal 10 sites
  • Developing new or customizing existing themes
  • Knowledge in HTML, CSS, JavaScript/JQuery, and basic PHP

Steps to certification

Take introductory Drupal courses

Acquia offers free Drupal preparatory courses on Acquia Academy.

Customers, Partners, and the public can self-register on the appropriate branch of Acquia Academy to access these and other Drupal resources.

We offer private, instructor-led Drupal training for groups of up to 10 people. Visit Professional Services Product Guide to review our available private training.

Through our network of training partners, we offer public, instructor-led training, sold by the seat. Visit the Acquia Developer Portal for public training listings.

After taking an introductory course, build a small website on your own to reinforce the concepts learned in the course.

Gain practical experience

Completing the courses may not fully prepare you to take the certification exam. You need some practical experience to attempt the exam. We recommend that you gain practical experience by working on at least 2-3 real-life projects.

Perform self-assessment

Once you decide to take the exam, we recommend that you study the domains and topics covered by the exam and their relative weight. You should also perform a self-assessment of your own areas of strength and weakness vis-a-vis the domains/topics covered by the exam blueprint. This is a recommended starting point for experienced Drupal front end developers.

Use labs and study guide

Based on your self-assessment, you may need to gain knowledge and experience in some domains or topics. The best way to learn Drupal is by working or experimenting with it. Follow the suggestions given for preparation in the Preparation section and refer to the external resources given in the Study Guide section.

Register for and take the exam

At this stage, you should be ready to take the exam. Follow the instructions for registering for an exam.

Exam domains

Domain% of Questions
1.0 Fundamental Web Development Concepts25%
2.0 Theming Concepts25%
3.0 Templates and Preprocess functions25%
4.0 Layout configuration15%
5.0 Performance5%
6.0 Security5%
TOTAL100%

Note

This exam blueprint includes topics /domains and test objectives to help guide the test taker. They should not be construed as a comprehensive listing of all of the content on this examination.

Self-assessment

Experienced Drupalists will likely know their weaknesses more than they know their strengths. You might have judged your own skill levels while reading through the domains listed above. It is quite natural for you to be more experienced and proficient in one domain than another Also, within a domain, it is quite likely that you have hands-on experience on some topics but have never touched other areas within the same domain.

How to use self-assessment

We suggest you perform a skills and expertise self-analysis with respect to the domains and topics listed in the blueprint. The blueprint lists test objectives (topics) for each domain. Rank your skills on a scale of 0 to 10 against each test objective (0 for absolutely zero knowledge or exposure and 10 for complete mastery).

  • Topics with 8+ score are your strengths.
  • Topics with a score of 5 to 7 will need some preparation.
  • The ones below 5 may require a lot of preparation, or guided instruction.

You may use the following table to carry out your evaluation.

Acquia Certified Drupal 10 Front End Specialist self-assessment table

DomainTopicYour Score (1-10)
1Fundamental web development concepts
 
1.1Demonstrate knowledge of HTML and CSS
 
1.2Identify PHP programming concepts
 
1.3Identify JavaScript and jQuery programming concepts
 
1.4Demonstrate knowledge of responsive design concepts
 
2Theming concepts
 
2.1Demonstrate ability to define and use custom regions in a theme
 
2.2Demonstrate ability to work with theme configuration
 
2.3Demonstrate knowledge of working with stylesheets
 
2.4Demonstrate knowledge of working with JavaScript in a theme
 
2.5Demonstrate knowledge of working with Breakpoints in a theme
 
2.6Demonstrate ability to build a sub-theme from a base theme
 
3Templates and pre-process functions
 
3.1Demonstrate ability to use Twig syntax
 
3.2Demonstrate ability to build and customize core templates for managing markup
 
3.3Demonstrate ability to work with template suggestions
 
3.4Demonstrate ability to write template pre-process functions for overriding custom output
 
3.5Demonstrate ability to use form alter and template suggestions alter
 
4Layout configuration
 
4.1Demonstrate ability to create and configure blocks for building layouts
 
4.2Demonstrate ability to create and configure views for building content list pages, blocks and feeds
 
4.3Demonstrate ability to use Layout Builder module to build layouts
 
5Performance
 
5.1Demonstrate ability to analyze and resolve site performance issues arising from site configuration
 
5.2Demonstrate ability to analyze and resolve site performance issues arising from custom theme
 
6Security
 
6.1Demonstrate ability to analyze and resolve security issues arising from site configuration
 
6.2Demonstrate ability to analyze and resolve security issues arising from site custom theme
 

Preparation

Once you have a list of topics for which you need preparation, you will possibly face two challenges:

  1. Find and study documentation and knowledge resources for the topics.
  2. Find enough practical case studies covering the topics.

Knowledge resources

Customers and Partners the public can self-register on the appropriate branch of Acquia Academy and take courses in the relevant domain to refresh their knowledge.

Supplementing introductory Drupal training with documentation and online resources is a good idea.

A list of online resources and documentation for each learning domain appears in the Study Guide section.

Labs and case studies

Finding sufficient practical case studies covering exam topics can be a challenge. Here are a few ideas and suggestions for finding case studies for your preparation:

Site building

Review several (3-5) Drupal 10 projects that you or your team has worked on in the past year. Review the content types, field settings, display settings, vocabularies, blocks, menus, and views used on the sites.

Ask questions

  • Why are the configurations the way they are?
  • What can be changed or improved?
  • What are the issues or Support requests raised by the client?
  • What changes were made to initial configurations and why?

Front end development

Find custom themes developed by your team over the last year. If possible, obtain the source designs or wireframes on which they were based. Review template files and Twig syntax, review CSS and JS files, review pre-process functions implemented by the theme.

Ask questions

  • Is the theme implemented exactly as per the designs? If not, what changes were needed and why?
  • Are theme regions optimal? Is there any redundancy?
  • Which templates and template suggestions are used?
  • Are there any theme settings?
  • How are CSS and JS files called in the theme?
  • Are there any preprocess functions used? Why?
  • Which breakpoints are used? How adaptive design concepts are applied?
  • If using a sub-theme, which properties from the base theme are inherited and which are unique in the sub-theme?
  • Which Twig functions are used?
  • Are any custom display and view modes defined for entities and forms? How and where they are used?
  • Were there any front-end performance issues? How were they handled?

If you do not have access to themes developed by your team, you could do this exercise by examining a few contributed themes.

If you wish to sharpen your knowledge further, you could try building a theme on your own!

Study guide

Tools to know for Drupal development

Drupal Coding Standards

To get an overview of coding best practices and standards as they are applied in the Drupal community, see Coding standards.

These coding standards, detailed for every area in which code might be produced during Drupal development, represent the broadly established best practices of the community. Adhering to these best practices will make development go more smoothly, and your contributions to Drupal core or modules to be more readily and easily accepted. If you are working on a project with Acquia Support, these are the coding standards to which pull requests must adhere.

Drush

Drush is considered a basic skill for Drupal site development.

Practice skills application

The application of Drupal concepts is the hands-on practice of development. The courses provide some opportunities to practice doing basic front-end development tasks alongside the videos, but you will need more practice than that to pass the exam. Some suggested resources are below, which provide details for the completion of specific front-end development tasks in Drupal.

Resources:

TopicLink
Drupal Theming DocumentationTheming Drupal

Section 1: Fundamental web development concepts

1.1 Demonstrate knowledge of HTML and CSS

A front-end specialist should have extensive experience writing clean, standards-compliant HTML and CSS. They should be well versed in the HTML5 and CSS3 specifications and should be up to date on modern standards and practices.

Resources:

TopicLink
HTML5 Developer GuideHTML5
CSS (Mozilla Developer Network)CSS

1.2 Identify PHP programming concepts

A front-end specialist should have knowledge of PHP syntax, including but not limited to:

  • PHP basic syntax
  • Use of general PHP functions as well as Drupal specific ones.
  • Variable handling, manipulation and use.
  • Control structures.
  • Basic object manipulation.

Resources:

TopicLink
PHP ManualPHP Manual

1.3 Identify Javascript and jQuery programming concepts

A front-end specialist should have extensive experience writing custom UI components using “vanilla” Javascript and jQuery. They should follow modern best practices and be familiar with common security and performance issues.

Resources:

TitleLink
Javascript DocumentationJavaScript
jQuery DocumentationjQuery

1.4 Demonstrate knowledge of responsive design concepts

A front-end specialist should understand the principles of responsive design. Drupal 10 uses a responsive “Mobile First” approach out of the box.

  • What are responsive design and mobile first concepts
  • How to apply responsive design in your stylesheets and themes
  • Understand the use of media queries in a responsive site

Resources:

TitleLink
Media Queries: Width vs. Device WidthMedia Queries: Width vs. Device Width
Responsive web design (Drupal.org)Responsive web design

Section 2: Theming concepts

2.1 Demonstrate ability to define and use custom regions in a theme

A front-end specialist should have experience defining custom regions, printing those regions out in the proper templates, and creating conditional display logic for when to print regions.

Resources:

TitleLink
Adding regions to a themeAdding Regions to a Theme
page.html.twig (API)page.html.twig

2.2 Demonstrate ability to work with theme configuration

A front-end specialist should be familiar with administrative settings related to theme configuration and should have the ability to create his/her own theme settings using custom code.

Resources:

TitleLink
Creating advanced theme settingsCreating advanced theme settings

2.3 Demonstrate knowledge of working with stylesheets

A front-end specialist should be familiar with CSS and Drupal’s best practices for writing and organizing CSS. They should be able to add their own stylesheets to a theme, be familiar with the ways Drupal aggregates stylesheets, be familiar with how Drupal orders stylesheets, and be able to conditionally load stylesheets.

Resources:

2.4 Demonstrate knowledge of working with Javascript in a theme

A front-end specialist should have experience writing custom Javascript and jQuery for Drupal. They should be comfortable using Drupal’s Javascript API and be familiar with Drupal’s javascript coding standards. They should be able to conditionally load javascript.

Resources:

2.5 Demonstrate knowledge of working with breakpoints in a theme

A front-end specialist should know how to define and use a common set of breakpoints that can be used throughout a site. They should be well versed in CSS media queries and be proficient in constructing media queries that can target a wide variety of devices.

Resources:

TitleLink
Working with Breakpoints in DrupalWorking with breakpoints in Drupal
Using media queriesUsing media queries

2.6 Demonstrate ability to build a sub-theme from a base theme

A front-end specialist should be well versed in the pros and cons of a wide variety of core and contributed base themes. They should know how to choose the appropriate base theme for a project and know how to properly sub-theme in a way that utilizes, overrides, and extends the assets of the base theme.

Resources:

TitleLink
Creating Sub-themesCreating sub-themes

Section 3: Templates and pre-process functions

3.1 Demonstrate ability to use Twig syntax

A front-end specialist should have knowledge of the basic and advanced twig syntax, including but not limited to:

  • Twig basic syntax
  • Use of general functions and filters as well as Drupal specific ones.
  • Variable handling
  • Control structure

Resources:

TitleLink
Twig official documentationTwig Documentation
Twig in DrupalTwig in Drupal
Functions in Twig templatesFunctions - In Twig Templates
Twig for Template DesignersTwig for Template Designers
Filters - Modifying Variables in Twig TemplatesFilters - Modifying Variables in Twig Templates

3.2 Demonstrate ability to build and customize core templates for managing markup

A front-end specialist should have knowledge of how to use, name, and create the templates to output the desired markup for the project.

  • Template order and naming conventions
  • Template inheritance and extension
  • HTML and Twig markup combinations to accomplish the theming task

Resources:

TitleLink
Working with Twig TemplatesWorking With Twig Templates
Twig Template naming conventionsTwig Template naming conventions
Creating advanced theme settingsCreating advanced theme settings

3.3 Demonstrate ability to work with template suggestions

Drupal provides a better way to: handle template suggestions, add custom suggestions, or define a specific template suggestion for an element.

Resources:

TitleLink
Debugging Twig TemplatesDebugging Twig templates

3.4 Demonstrate ability to write template pre-process functions for overriding custom output

A front end specialist should be able to use pre-process functions to override, improve, or get extra data needed for templates.

  • Correct use, specificity, and hierarchy of pre-process functions
  • How to obtain information from the Database, or objects and entities from Drupal and know the correct way of passing this information to your template
  • How to use the new and improved library management to have a better management of JS libraries and stylesheets
  • Be aware of the changes to the theme API and the improvements to previous versions of Drupal

Resources:

TitleLink
Function hook_preprocess_HOOKfunction hook_preprocess_HOOK

Section 4: Layout configuration

4.1 Demonstrate ability to create and configure Blocks for building layouts

A front-end specialist should be proficient in creating and managing blocks in Drupal’s UI, and in custom code. They should follow best practices for creating flexible layouts using Drupal’s built-in block system.

Resources:

TitleLink
Drupal User Guide : BlocksBlocks

4.2 Demonstrate ability to create and configure views for building content list pages, blocks, and feeds

A front-end specialist should be proficient in presenting content using views. They should be familiar with the different types of views displays, their options, and the pros and cons of using each.

Resources:

TitleLink
Drupal User Guide : ViewsCreating Listings with Views

4.3 Demonstrate ability to use Layout Builder module to build layouts

A front-end specialist should know how to use Drupal core Layout builder module to configure layouts on per content type or per node basis.

Resources:

TitleLink
Drupal User Guide : Layout BuilderLayout Builder

Section 5: Performance

5.1 Demonstrate ability to analyze and resolve site performance issues arising from site configuration

Topics focus on standard methods of Drupal configuration that optimize site performance in multiple scenarios. The various scenarios cover preferred combinations that result in minimizing page loads and render time.

5.2 Demonstrate ability to analyze and resolve site performance issues arising from custom theme

This section covers common pitfalls with performance when creating various themes. Scenarios will cover efficient options with PHP, Javascript, and CSS. Questions will also cover techniques in debugging slow code within Drupal themes.

Resources:

TitleLink
Frontend Performance GuideFront-end performance

Section 6: Security

6.1 Demonstrate ability to analyze and resolve security issues arising from site configuration

This includes common techniques around Drupal security for development and site building tasks. Security topics focus on programming scenarios, and configuration changes made through the Drupal UI.

6.2 Demonstrate ability to analyze and resolve security issues arising from a custom theme

Topics include best practices revolving around proper security in the theme layer. This includes data sanitization techniques for both PHP and Twig processing. A knowledge of security protocols in each layer of the render cycle is required.

Resources:

TitleLink
Security in DrupalSecurity in Drupal