On Drupal versions & certification

When dealing with certifications for Drupal, there are a number of questions - is it worth getting a certification? If so, which Drupal version should you target? This is my personal take on those questions.

On certification in general

I am not really for or against certifications - they are another (but not the sole) signal that can a potential employer/client (aka someone who does now know you) can use to judge whether your knowledge claims are legit. Working with a Grandmaster, in this particular case, almost certainly guarantees that the person in front of you knows both the capabilities and limitations of the platform, allowing them to deliver the best possible technical result without overpromising, and taking into consideration potential pitfalls and delays. 

My only issue is that a certification alone is meaningless unless coupled with deep experience and exposure to real world projects and the issues that come with them and remain undocumented: I have never had the pleasure of working on a project that everything started and ended as agreed. Business needs change, people change opinions, and your tools and architecture need to take pre-emtive measures to mitigate this; code developed needs to be held to more than Drupal standards in order to be maintainable for years to come. Almost everyone makes assumptions, and those can be lethal when formalizing specifications since they are entirely subjective.

There are whole discussions online ( this is a simple Software Engineering discussion on StackExchange ), and the result is always the same: different people have different opinions on the matter; there is no universal truth to the matter. My personal opinion is that they never hurt (especially when you study for them, since they provide a goal to target and help you deepen your knowledge), but do get counter-productive if you obsess (ie don't get a certification just by memorizing, or a certification for something you do not practice - in both cases it's going to be useless shortly after you receive it since you'll forget all about it).

Having been on the hiring side of several interviews, I can tell you that certifications were always an indicator of the personal drive of that person, more than a token of proof for the subject matter; combined with experience though, they become a valid signal that the person can deliver.

An insight on Drupal versions

Drupal has had a long tradition of long lasting major versions. Let's see how long Drupal versions last:

 ReleasedEnd of LifeYears
Drupal 6200820168
Drupal 72011202211
Drupal 8201520216
Drupal 9202020222

Do you see the trend here? Before jumping to conclusions, a bit of what happened in the background:

Drupal 7 was a refinement of Drupal 6, which was itself a refinement of Drupal 5. Things (lots of them) where either added/altered/deprecated, however the core philosophies and method of development remained the same. Templating was done with a custom PHP system. Modules were entirely functions and hook implementations (OOP was up to the developer of the individual module, but the core and module interconnection systems where hook-based). Everything Drupal needed to be made by Drupal.

Then the PHP landscape itself changed. Dependency management ( composer ) became a thing, and so depending on external projects could be reliably implemented. The lowest levels of Drupal are no longer built or maintained (exclusively) by Drupal. This in turn meant that Drupal had to bite the bullet and introduce all the OOP goodness that is prevalent in "better" software development practices: OOP, PSRs, container with injection, autoloading, services.

This lead to Drupal 8 being late to come out, and alienate a large percentage of its developer base - it even lead to a fork being created to continue using the "good old" ways ( BackdropCMS ). It was so different, that a "proper" upgrade path does not exist - only a data migration path. 

The good news? If you jump on the Drupal 8 bandwagon, you are set for Drupal's future. Drupal 8 to Drupal 9 upgrades are a breath of fresh air, compared to any major upgrade in the past (I've done a tone of D5->D6, D6->D7 upgrades, and never did the go without issues). D8->D9? Done a few already, and the worst case was assisting contrib module developers with applying automated fixes to their modules. As long as your custom code respects deprecation notices, it remains 100% the same from D8 to D9. 

The hard part is biting the bullet and going from "legacy" Drupal (aka D5,6,7) to "new" Drupal (aka D8,9), especially when you're invested large amounts of time, effort and hard-earned cash into your "legacy" project.

Coupling these into a decision

So, should someone get certified for Drupal? Personally I think it's a no-brainer if you're active in this area, since it's an investment that will pay itself off; one way or another.

But which version of Drupal should you be certified for? 

Well... the latest one (Drupal 9) is a must, since any project that starts now will (almost) certainly be on that to ensure the longest window for security and functionality updates. However, there is a vast majority of websites out there that have been built in one of the previous versions! Thus the answer becomes a strategy: start with the latest (since it's a sure investment), and then proceed with getting the one that has the largest installation base. In our case, that's Drupal 7 by far. 

And since Drupal 8 and Drupal 9 and practically siblings, with minimal differences between them, it is quite easy to support that having certification for one is good enough for the other! So, arguably you don't need both of those, or at least I personally feel that way. It will be much more interesting to stagger certifications by one major version ( eg Drupal 9, Drupal 11 or Drupal 8, Drupal 10 ) if the changeset warrants it, than targeting every single certification there is.

I hope this actually helps someone in their decision to get certified, let me know in the comments!