Professional Module Development

"What sets DrupalEasy apart is Mike's exceptional teaching style. Nowhere else will you encounter
someone who can seamlessly create pockets of learning opportunities in Drupal, catering from fundamental to advanced levels with composure and genuine compassion for the subject."

  • Daniel Wilkerson, Winter 2024 

90-hour course

Live, online instructor

3.5-hour classes twice/week

Access to weekly DrupalEasy office hours (2 hours/week)

Comprehensive learning tools & screencasts for every lesson

300+ pages in five parts, Lite   version includes almost 200 pages in three parts.

Classes & office hours presented with Zoom

Dedicated Slack channel

60-hour Lite   version available

Part of the DrupalEasy Learning Community

  • Developer tools
  • Xdebug
  • PhpStan
  • PhpUnit
  • Plugins
  • Services and dependency injection
  • Custom forms
  • Drupal hooks
  • Events
  • Queue API
  • Batch API
  • Custom Drush commands
  • Caching
  • ...and more

This course is Drupal 10 ready.

  • Full version of the course is 15 weeks long.
  • Lite version of the course is 9 weeks long.

Would you like to learn a bit more about the course?

Register for A Closer Look at Professional Module Development.

Join us on June 11 or July 30 for a 30-minute webinar.

This course provided tons of hands-on practice with many Drupal APIs and best practices like writing automated tests. I feel more motivated and confident both in my ability [to] contribute back to Drupal core and to train others in Drupal development.

  • Amber Matz, Winter 2023

"This is a great class, I am much more confident in my module building and have improved my coding standards... A "must do" for anyone who wants to write code that you can share with confidence."

  • Adam Bauer, Summer 2022

Curious what an online class is like? Or the instructor's teaching style?

Check out this ~5-minute DrupalEasy Class Clip from the Winter, 2023 semester.

Professional Module Development is DrupalEasy's newest long-form, best-practice focused, professional Drupal training course. 

The full   version of the course, approximately 90 hours of instruction, leads  students through the process of learning modern Drupal module techniques and skills, setting up their development environment, running automated tests, and using modern code quality tools. 

The course is presented with weekly rotating combinations of PhpStorm, Visual Studio Code, Lando, and DDEV. Developer tool lessons include details for all four of these tools.

If you're looking to become a professional Drupal module developer; there is no better way to learn the skills necessary as part of our friendly and professional DrupalEasy Learning Community.

Cost: $3,500

Special pricing is available to Drupal Career Online alumni, non-profit organizations, and groups of 3 or more students. 

PMD Lite  

The Lite   version of the course, approximately 60 hours of instruction, provides a select portion of the curriculum for those who don't require the full menu of topics. PMD Lite runs concurrently with the full version of the course and is offered at a reduced price.

PMD Lite    focuses on the core module development aspects of the class, skipping topics such as developer tools, events, custom Drush commands, and caching.

Cost: $2,500

A fantastic course covering some really advanced stuff. If you understand the principles of Drupal, but want to move forward to deal with advanced development topics, this is a good place to start.

  • James Shields, Winter 2023

The DrupalEasy Learning Community includes multiple supporting features that go above-and-beyond traditional classroom training.

Excellent course - cannot recommend highly enough! Covers all the necessary topics in great detail. 

  • Ian Finlay, Summer 2022
Mike Anello, @ultimike
Lead Instructor: 
Mike Anello

Active 15+ year community member & leading expert in Drupal training & consulting, Mike is the architect & author of this course. 

PMD not only provides the how to, but also always strives to answer the why.

  • Why are coding standards important?
  • Why should I use PhpStan?
  • Why do I care about dependency injection?
  • Why is Xdebug better than other debugging tools?
  • Why should I take the time to write automated tests?
  • Why do I need to pay attention to caching?
  • Why does it matter which IDE I use?

Many PMD lessons start by making the case for why the topic about to be taught will save you time, make you more efficient, or allow your code to be more flexible - real motivation for you and your fellow classmates to fully embrace the topics.

Winter 2024

  • Registration deadline: January 26, 2024
  • Class begins: January 30, 2024
  • Payment deadline: February 2, 2024
  • Class ends: May 9, 2024


  • Lite registration  deadline: February 9, 2024
  • Lite class begins: February 13, 2024
  • Lite payment deadline: February 15, 2024
  • Lite class ends: April 11, 2024

Classes are Tuesdays and Thursdays from noon-3:30pm ET. 

Summer 2024

  •    Registration deadline: August 9, 2024
  •     Payment deadline: August 12, 2024
  •    Class begins: August 13, 2024
  •    Class ends: November 21, 2024


  • Lite   registration deadline: August 23, 2024
  • Lite   payment deadline: August 26, 2024
  • Lite   class begins: August 27, 2024
  • Lite   class ends: October 24, 2024

Classes are Tuesdays and Thursdays from noon-3:30pm ET.

"Fantastic dive into the details of module development.  An excellent way to develop new skills or strengthen/hone your existing module development skills.
  • Marvin Crippen, Summer 2022

Syllabus overview

Part 1 - Full   course participants

  • Course custom module user stories
  • Course site configuration
  • Developer tools (phpcs, PhpStan, Xdebug)
  • Integrated development environments (PhpStorm, Visual Studio Code)
  • Automated testing overview

Part 2 - Full   and Lite   course participants

  • Overview of course custom module architecture
  • Starting a custom module with test-driven development (functional PhpUnit test)
  • Creating a configuration form (including configuration schema)
  • Creating a plugin type
  • Creating a plugin
  • Creating a unit test
  • Creating kernel tests

Part 3 - Full   and Lite   course participants

  • Overview of services and dependency injection
  • Custom form validation and submission
  • Service parameters

Part 4 - Full   and Lite   course participants

  • Managing custom modules with Composer
  • Creating a plugin with an external dependency
  • Creating a kernel test
  • Implementing hook_user_login() and hook_cron()
  • Using the Drupal Queue API
  • Creating a admin form
  • Using the Drupal Batch API

Part 5 - Full   course participants

  • Custom events and event subscribers
  • Creating a custom Drush command
  • Hooks related to installing and uninstalling modules
  • Overview of Drupal caching techniques

Very thorough and detailed module development course that has given me a more comprehensive understanding of module development.

  • Devon Ek, Summer 2022

Download and/or print a single-page PDF with information about the course.


  • Experience with a local development environment (DDEV or Lando preferred)
  • Experience with Composer
  • Experience with Drush
  • Knowledge of object-oriented PHP
  • Knowledge of introductory Drupal module concepts (routes, controllers, forms, hooks)

Additional suggested prerequisites for the Lite   version

  • Comfort running local PhpUnit tests
  • Drupal Coder
  • PhpStan
  • Xdebug

The best part of this course was that it gave me CONFIDENCE! I now know where to look for coding help, and can read/understand OO code. I have a better understanding of PHPStorm and how it's integral to coding PHP and Drupal.

  • John Learned, Summer 2022

Ready to learn Professional Drupal module development? Register now for our Summer 2024 session!