Full Stack developers
The industry is getting more professionalized. It's hard to keep a very high level in all disciplines
Recently, I started to hear some buzz about full-stack developers and how it's no longer believable to call yourself such. It's a topic that I am especially interested in, as I have considered myself one of those for a long time. I will try to explain my thoughts and please, feel free to add yours as well!
Huh? What happened?!
I believe that in the past years, especially since 2010, web development has evolved very quickly. Mostly due to the increasing popularity of web apps and other types of apps that use the Internet in some way. This is great! for humanity in general. We now have a more democratic and competitive environment to showcase our things, buy & sell, interact and communicate, but of course, that comes with a price.
What used to be relatively straightforward from an architectural point of view, has become more complex now. Before 2010, I used to work mainly with open source LAMP software and Adobe Flash / ActionScript. Of course, there were also libraries, plugins and a few frameworks, but nothing compared to the scale of what is available now.
So, how do I call myself now?
The amount of disciplines within web development has also increased. The separation between front-end and back-end doesn't even cut it anymore. Nowadays, we are starting to even have to choose an area of expertise within those domains, like Big Data, Game Development, Animation, mobile dev like Cordova or React native, framework-specific / CMS-specific development, and creative technologies (Arduino, Kinect, IoT,...), etc. The size of the projects makes it almost impossible to get involved in all areas of active coding work at the same time. If we consider how quickly things are changing (especially frameworks), it's also becoming more and more difficult to keep switching between areas of expertise.
In fact, in the following chart, we can appreciate that only 3% of the web development job market is looking for a full-stack developer, while front-end developers are the most desirable at 20%.
Credit: Sundeep Pattem and Olivia Zhao original research for SkilledUp.com.
Developers that work on small projects, like WordPress or Drupal websites, of course, you can still define yourself as a full-stack developer, but this is something that will also be threatened by new platforms like Ghost, which implements a more complex stack consisting of Node.js, Express.js, Ember, Grunt, Handlebars, jQuery, Moment.js, etc.
It's a pity to let go of something that you think you can be competent with, but it's just not realistic to try to spread yourself too thin. Tasks require time, dedication and attention to detail, so it's just not possible to do everything (unless you are a prodigy or live with your hands attached to the keyboard).
What if I still want to have a go at everything?
Perhaps the most respectable aspect of people who claim to be full-stack, is that it conveys ambition and determination. The ideal developer should be willing to have a go at learning new things, but also acknowledge when they need help from a specialist in the team.
After all, smaller companies and startups still need full-stack developers. Developers are often forced to acquire new skills when the resources simply aren't available. The problem for companies desperate to hire these guys is that the real multi-skilled developers are quite hard to find.
On the other hand, for complex projects, it is critical to have at least one person with at least a functional understanding of each of the composite parts who is also capable of connecting various tiers and working with each expert so that a feature can be delivered. In a way, these tier-connecting, bridge-building software architects (who are likely experts in only one or a couple of tiers) are less full-stack developers and much more full-stack integrators.
If you want to have a go (maybe with a side project), one of the most popular full-stack frameworks is MEAN.
Image from Bacancy Technology
So, what do you think? Is it just a matter of labels or are we experiencing dramatic changes in our industry?
Featured image from PacktPub