Information for: DEVELOPERS   PARTNERS

Acquia Certified Drupal 9 Developer

This is the study guide for the Acquia Certified Drupal 9 Developer Examination.

In this guide, we’ll explain the exam blueprint, break down the knowledge domains, and help you get familiar with the nature of questions asked in the exam.

You’ll find helpful steps to prepare for the exam as well as links to further resources for study and preparation.

About the Exam

The following is the key information about the exam:

  • Exam Name: Acquia Certified Drupal 9 Developer
  • Exam Duration: 90 minutes
  • Exam length: 60 questions
  • Pass/Fail mark: 65%

The purpose of this exam is to validate the skills and knowledge of a Drupal Developer in the areas of fundamental web concepts, site building, front end development (theming), and back end development (coding). This exam is based on the Drupal 9 platform.

This exam validates a candidate’s ability to:

  • Design, develop and deploy Drupal 9-based solutions
  • Understand the core Drupal 9 basic architecture
  • Understand best practices for front and back end development
  • Develop and maintain applications using Drupal 9 front and back end development
  • Develop and implement new Drupal 9 modules and themes
  • Customize and extend existing modules and themes

The basic knowledge and skills required at this level should include all of the following areas and objective components:

  • Professional experience using Drupal technology
  • Setup and configure Drupal sites
  • Develop and implement new Drupal modules
  • Develop new or customize existing themes: knowledge of existing themes, HTML, CSS, JavaScript/JQuery
  • Customize and extend existing modules: knowledge of existing modules, PHP

Steps to Developer Certification

Take Introductory Drupal Courses

Customers can access Drupal preparatory courses on Acquia Academy at https://customers.acquiaacademy.com/learn for free, and review them as many times as you like. If you are in an Acquia workshop or training program, you may be assigned the courses that you need to complete to obtain your certification.

Public, instructor-led Drupal training is available for purchase by the seat, and private training is available for purchase for groups of up to 10 people. Visit Acquia Professional Services Product Guide to review our available public and private Drupal training.

For Developers, we offer the following to get you started on your Drupal journey:

  • Drupal Site Building
  • Drupal Layout and Theming
  • Drupal Module Development

After taking the courses, 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 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 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.

Appear for the Exam

At this stage, you should be ready to take the exam. Follow this link to register for the exam. You may choose from an online proctored or an onsite proctored exam delivery option.

Exam Domains

Domain % of Questions
1.0 Fundamental Web Development Concepts 10%
2.0 Site Building 30%
3.0 Front end Development (Theming) 25%
4.0 Back end Development (Coding) 35%
TOTAL 100

D9 Developer Breakup

Note

This exam blueprint includes topics, domains, and test objectives to help guide the test taker. It should not be construed as a comprehensive listing of all of the content of 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 four 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-assessment 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 a score of 8+ are your strengths.
  • Topics with a score of 5 to 7 will need some preparation.
  • Topics with a score 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 9 Developer Site Self-Assessment Table

Domain Topic Your Score (1-10)
1 Fundamental Web Development Concepts

1.1 Demonstrate knowledge of HTML and CSS.

1.2 Identify JavaScript and jQuery programing concepts.

1.3 Demonstrate the use of Git for version control.

2 Site Building

2.1 Demonstrate ability to create and configure content types with appropriate fields and field settings for building basic data structures.

2.2 Demonstrate ability to configure display modes for building custom form and view modes for core entities.

2.3 Demonstrate ability to create and use taxonomy vocabularies and terms for classification and organization of content.

2.4 Demonstrate ability to configure block types, manage blocks library and configure block layouts.

2.5 Demonstrate ability to build main and alternative navigation systems by using menus.

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

2.7 Demonstrate ability to use configuration management capabilities for exporting site configurations.

2.8 Demonstrate ability to build multilingual websites using core multilingual capabilities.

3 Front-end development (theming)

3.1 Demonstrate ability to create a custom theme or sub theme.

3.2 Demonstrate knowledge of theming concepts.

3.3 Demonstrate ability to use Twig syntax.

3.4 Demonstrate ability to build or override Twig templates for defining layout content.

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

4 Back-end development (coding)

4.1 Demonstrate ability to write code using core and object-oriented PHP.

4.2 Demonstrate ability to develop custom modules using Drupal API for extending Drupal functionality.

4.3 Demonstrate ability to store and retrieve data using code.

4.4 Demonstrate ability to work with other essential APIs.

4.5 Demonstrate ability to write code using Drupal coding standards.

4.6 Demonstrate ability to analyze and resolve site performance issues arising from site configuration or custom code.

4.7 Demonstrate ability to analyze and resolve security issues arising from site configuration or custom code.

4.8 Demonstrate ability to write a test using the core testing framework.

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

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

We provide a list of online resources and documentation for each learning domain in the Study Guide section.

Labs / 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 8 or 9 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?
  • Are there any theme settings?
  • How are CSS and JS files called in the theme?
  • Are there any preprocess functions used? Why?

If you don’t 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!

Back end development

If you have not worked on back end development or module development, preparing for this part of the exam could be a challenging task. In this case, studying the code of modules developed by your team may or may not help, as modules developed could either be extremely complex or very specific to the requirement or use case. The exam expects that you have an overall understanding of Drupal’s API, core plugin system, and their applications.

We suggest that you attend a module development course and/or build a small module on your own to prepare for this domain. If you cannot attend a training program and are a self-learner, you may try the Examples module (https://drupal.org/project/examples.) The Examples module provides highly documented working code snippets for many of the Drupal APIs and concepts covered under Sections 4.1 and 4.2 - if you prefer to try out some code in action rather than going through documentation.

Study Guide

Check out the new Drupal User Guide for understanding key concepts.

Tools to Know for Drupal Development

Drupal Coding Standards

This is an overview of coding best practices and standards as they are applied in the Drupal community.

https://www.drupal.org/docs/develop/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 more readily and easily accepted. If you are working on a project with Acquia technical support, these are the coding standards to which pull requests must adhere.

Drush

While not required to pass the Site Builder exam, Drush is considered a basic skill for Drupal site development.

https://github.com/drush-ops/drush

Practice Skills Application

The application of Drupal concepts is the hands-on practice of development. The courses provide some opportunity to practice doing basic 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 development tasks in Drupal 8.

1.0 Fundamental Web Development Concepts

1.1 Demonstrate knowledge of HTML and CSS

1.2 Identify Javascript and jQuery programing concepts

1.3 Demonstrate the use of Git for version control

Topic URL
HTML, CSS, JS, PHP Learning resources https://developer.mozilla.org/en-US/docs/Web
Working with Libraries in Drupal (Javascript and Stylesheets) https://www.drupal.org/docs/theming-drupal/adding-stylesheets-css-and-javascript-js-to-a-drupal-theme
Drupal Javascript API https://www.drupal.org/docs/drupal-apis/javascript-api/javascript-api-overview
Git Tutorial on Atlassian https://www.atlassian.com/git/tutorials
Common Git Workflows https://www.atlassian.com/git/tutorials/comparing-workflows

2.0 Site Building

2.1 Demonstrate ability to create and configure Content Types with appropriate fields and field settings for building basic data structures

2.2 Demonstrate ability to configure Display Modes for building custom form and view modes for core entities

2.3 Demonstrate ability to create and use Taxonomy vocabularies and terms for classification and organization of content

2.4 Demonstrate ability to configure Block types, manage Blocks library and configure Block layouts

2.5 Demonstrate ability to build main and alternative navigation systems by using Menus

2.6 Demonstrate ability to create and configure Views for building content list pages, blocks, and feeds

2.7 Demonstrate ability to use Configuration Management capabilities for exporting site configurations

2.8 Demonstrate ability to build multilingual websites using core multilingual capabilities

2.9 Demonstrate ability to build RESTful web applications using core Web Services capabilities

Topic URL
Drupal User Guide (D.O) https://www.drupal.org/docs/user_guide/en/index.html
Content Types https://www.drupal.org/docs/user_guide/en/content-structure-chapter.html
Taxonomies https://www.drupal.org/docs/user_guide/en/structure-taxonomy.html
Working with blocks https://www.drupal.org/docs/user_guide/en/blocks-chapter.html
Working with menus https://www.drupal.org/docs/user_guide/en/menu-concept.html
Working with Views https://www.drupal.org/docs/user_guide/en/views-chapter.html

3.0 Front End Development (theming)

3.1 Given a scenario, demonstrate ability to create a custom theme or sub-theme

3.2 Demonstrate knowledge of theming concepts

3.3 Demonstrate ability to use Twig syntax

3.4 Demonstrate ability to build or override Twig templates for defining layout content

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

Topic URL
Theming Drupal (D.O Docs) https://www.drupal.org/docs/theming-drupal

4.0 Back End Development (coding)

4.1 Demonstrate ability to write code using core and Object-Oriented PHP

4.2 Demonstrate ability to develop Custom Modules using Drupal API for extending Drupal functionality

4.3 Demonstrate ability to store and retrieve data using code

4.4 Demonstrate ability to work with other essential APIs

4.5 Demonstrate ability to write code using Drupal Coding Standards

4.6 Demonstrate ability to analyze and resolve site performance issues arising from site configuration or custom code

4.7 Demonstrate ability to analyze and resolve security issues arising from site configuration or custom code

Topic URL
Creating custom modules (D.O) https://www.drupal.org/docs/creating-custom-modules
Object Oriented Programming https://www.drupal.org/docs/creating-custom-modules/getting-started-background-prerequisites
Namespaces https://www.drupal.org/docs/develop/coding-standards/namespaces
Services and Dependency Injection https://www.drupal.org/docs/drupal-apis/services-and-dependency-injection/services-and-dependency-injection-in-drupal-8
Drupal APIs https://www.drupal.org/docs/drupal-apis
Drupal Coding Standards https://www.drupal.org/docs/develop/standards
Writing Secure Code https://www.drupal.org/docs/security-in-drupal/writing-secure-code-for-drupal