So, you've decided to take the plunge into Drupal development.
By this point you've probably already realized that there are a few different Drupal levels to explore:
-
Content Strategy
-
User Management
-
Site-Building
When we start trying on developer hats on, though, we discover that there are a few different ones:
-
Feature Developers
-
Creates and packages Drupal configurations into shareable mini-modules known as "Features"
-
Strong entity and views configuration skills
-
Should have a fairly strong grasp of HTML and CSS
-
May or may not know other programming languages such as PHP
-
Front End/Theme Developers
-
Creates themes
-
Exceptional HTML and CSS skills
-
Has, at least, minimal PHP skills
-
Probably knows additional front end languages such as javascript, jQuery, Nodejs, etc
-
Module Developers
-
Creates new modules and fixes bugs in existing ones
-
Exceptional HTML foundation and is, at least, passable with CSS
-
Exceptional PHP and database skills
-
Probably knows at least a couple of additional programming languages
-
Has, at least, some familiarity with systems
-
Systems/Dev Ops Developers
-
Primarily works in the back end, keeping things up and running
-
Exceptional PHP and database skills
-
Deals more with servers and networks
-
Very involved with testing and continuous integration systems
-
Typically exists for very large/enterprise level Drupal installations
Most folks will lean heavily to one type of development and have some basic familiarity with one or two others, but there are a few rare people out there that are proficient in all types.