For the past 6 or so years, I have been a Developer that primarily works with Drupal and I've pretty much been married to it for better or for worse.
Drupal has had many ups and downs over the years, and its steep learning curve gives Drupal Developers an edge over the market. As a Drupal Developer I've never had an issue finding a job, and it has a very strong community. Until now...
A series of unfortunate events has lead me back to hitting the bricks right around the time that Drupal's core version 8 has been released and is gaining popularity.
More often now I'm seeing job descriptions say things like, those who have not launched a Drupal 8 site need not apply. When I left my former job I was using Drupal 7 though... Crap. Don't get me wrong there's still a lot of companies and organizations that primarily work with Drupal 7, because it's quite the hurtle to update.
What makes this so difficult you ask? Well, one of the key differences is that it is essentially a different architecture entirely. Though it has a lot of backwards compatibility, the entire core has shifted from a procedural code base with some object oriented elements to using Symfony and object orient design patterns, a completely new templating engine, and many new concepts such as configuration. All that great documentation that exists in the community, doesn't exist for Drupal 8 yet since not enough people are using it. Though many of the key contributed modules provide you with a Drupal 8 version, it's not an easy switch.
If you're a Drupal Developer you know that up until Drupal 8 the code base consisted of working with arrays galore. Drupal 7 and pervious versions are basically really crappy design patterns with not much room for optimization, and a really superb caching layer to pick up the tab. Since I come from an OOP background I was pretty happy to learn that Drupal had made this switch, but other Devs that are sipping Drupal's kool-aid don't seem to question why such a leap? Why didn't Drupal's creators make better choices regarding design patterns in the first place?
That's when my eye started to wonder to other frameworks.
I started to play around with Laravel, and what a lean and elegant framework it was! Especially coming from something as bloated as Drupal, it was love at first code. Unlike Drupal, which does provide you with a GUI for things like constructing queries, and making Restful APIs, you have to know how to code, and optimize your own queries. Instead of the whole contributed module system which has a lot of overhead, you simply get model, view, controller. The documentation is very straight forward (there's a lot of stale documentation floating around on Drupal.org). It also has great support for Full-stack Developers using Bootstrap and VueJS.
So here I am about to accept a job offer after 6 years with Drupal, now a Laravel Developer. From the moment I first met Drupal it has been a wild ride, full of trials and tribulations. Over the years it has changed A LOT. Some day I might return, you never know. It's nothing personal Drupal. Laravel is a much better match for me. </3
Most people want to make things perfect. Sometimes we evaluate the complexity of an upcoming goal or a problem. So, the fear to not complete it perfectly or "wrong" (Yeah, who are judges? 🤔) stops us even from trying.