Advanced Drupal Module Development w/OOP PHP

(Finally) understand dependency injection, services, plugins, scalability and more!


This course teaches advanced Drupal 10 module development using Object Oriented Programming in PHP. We cover what you need to know about Object Oriented Programming and how to apply advanced programming principles in Drupal. Through hands-on exercises, students will build a non-trivial Drupal module utilizing OOP principles and newer, advanced techniques including Services & Service Collectors, Dependency Injection, custom Plugins, events, and more.

If you’re an experienced Drupal 7 module developer, the basics of Drupal 10 module development probably look pretty familiar.  If you’re looking to advance to the next level in Drupal module development, however, you’ll need to pick up object-oriented programming and delve into the new functionality in Drupal 10 that OOP produces.

Advanced Module Development with OOP addresses that need. This course teaches object oriented programming principles in the context of hands-on advanced module development. You’ll learn OOP concepts and their practical use as we develop a non-trivial Drupal module. 

This class is designed for:

Developers matching at least one of these:

  • People very comfortable writing PHP code (non-OOP is OK)
  • People comfortable creating Drupal 7 modules (using PHP)
  • People who have created basic Drupal 8+ modules

What You'll Learn

  • Explore the major concepts of Object Oriented Programming at an accelerated pace suitable for experienced PHP developers
  • Become comfortable with the differences (and pros and cons) of Hooks vs Events
  • Build reusable/swappable functionality using Drupal Services and Service Collectors
  • Utilize Dependency Injection to let the infrastructure provide system objects more efficiently 
  • Utilize the Plugin system to expose swappable user-facing functionality
  • Learn how thousands of videos (new & existing) are auto-tagged on (the module we're creating will be used there!)

Pick Your Session

Sign up for the session that best fits your schedule!

Alternatively, you may schedule a group training for your team, or select TBD to be notified of new course dates as they get scheduled.

Course Dates Enroll
Tuesday, August 6, 2024
Time: 9:30am - 4:00pm US ET
Sign Up
Time: TBD
Sign Up
Schedule Group Training
Time: TBD
Sign Up

A Better Way To Learn

Previous graduates built,, and more live websites!

Our personalized approach to teaching allows us to cater to individual student strengths and interests. Students are part of a real development team working on real projects. You'll even leave with a working portfolio and applied experience on a software project led by a senior developer.


Our Classes

  • I am very glad that I could get a job in Drupal

    At Debug Academy, Drupal front end training course is curated with real time use cases, regular exercises and home assignments to train an individual with minimal experience in computer programming. I was fortunate to be part of this training to fulfil my dream in software development field. While I sincerely worked on the tasks assigned to me and I got complete support from Ashraf and team to complete the tasks with clear understanding. The beauty of this training is that I was trained to be part of the real time projects.

    Shruthi Hulivana Nagaraju
    Drupal Developer
    Student Headshot
  • "I think the way learning in this course is laid out is really well done"

    The structure and order of the course made a lot of sense, it was very logical, and paced in an appropriate way. As soon as I got curious about another topic, it came up later in a lesson or in the next lecture. I think the way learning in this course is laid out is really well done, and now I'm going to have a hard time following the structure of other courses if it doesn't feel just as logical. Well done. Thank you.

    J'Vaughn Johnson
    Software Engineer at Yale University
    Head-shot of J'vaughn
  • "Being able to also work on a real project was amazing"

    I enjoyed the formal "lecture" and then the code along division of each class. Being able to also work on a real project was amazing and being part of real workflow using Git was especially helpful. Also, having Ashraf available for Zoom calls was quite nice in addition to the Slack chatroom.” Ashraf's a great instructor, he explains things in a way that make it seem more approachable.

    Jack Garratt
    Senior Full-Stack Drupal Developer at ICF
    Head-shot of Jack Garratt
  • "I really liked the support I received when taking the course!"

    I took the course and with the skills I gained, I was able to get placed on a high-profile project "The Cheesecake Factory"! && many other client projects right after. I must say the tools I learned here at Debug Academy are very similar tools that the teams I work with on client projects use as well which is pretty amazing! I highly recommend this course!!

    Lynda Santiago
    Drupal Developer at Debug Academy
    Student Headshot

Meet Your Instructor

At Debug Academy, we make sure we've got the right to give you the best education possible. Our instructors are renowned experts who lead with empathy to ensure a quality learning experience for everyone.

  • Ashraf Abed

    user headshot

    Ashraf Abed is a Drupal 7, 8, 9, and 10 Triple Certified Expert, and a former Technical Architect at Acquia. He is involved in numerous enterprise development projects and has been fortunate enough to experience working as the lead developer on websites like Whitehouse.Gov and other prominent Drupal websites. Teaching is his passion!



Take the Next Step!

Let us know that you're interested in this course. We'll reach out to you and other interested individuals with more information!