I have 20 years web development experience, the first half of that being what we today call full stack. For the most part, if you were a web developer in those days, you were a full stack developer. So much for the argument that "full-stack development (is) a “myth”, a “lie”, or a “scam”" -- just go back 10+ years.
A front-end JS framework these days is a big thing, to any proper marketable and applicable to the job tool you need a year or two to really become good at it. The issue is - I do not have that much time to do that if I also work backend, dealing with server scaling issues and trying to keep up with the business needs. Also, I can do 2 to 5 times more efficient job on the backend than the frontend anyway and the company literally will lose money if they put me to work on the frontend. I'm fairly capable to adapt in a month, but it will take me multiple years to really properly learn the tools and get up to speed with someone who does frontend full time.
My issue with full-stack terminology is when this is applied to Senior (and I mean proper Senior positions with experience of 7-10+ years under the belt) where it is clear you need a specialist in the field. But for some reason, they still look for full-stack so you get ignored by the HR just on the fact you are a backend developer.
Amen! I've been coding for more than 15 years. Back then you HAD to be a jack of all trade.. and don't forget, GitHub didn't exist, stackoverflow neither, we learned to code by reverse engineering code, you know, the hard way!
I'm wondering if the entire issue is a generational one. The folks who remember the times that full-stack was the pinnacle, and the newer developers who hear about it from those guys and immediately say "What? No, that's not possible, it must be a lie".
The older guys have all these skills, but it took 10-20+ years for proficiency, and the younger guys (validly) don't see the same path available to them as specialization has spread out and become more defined over time.
The 'hard way' that Alex is talking about doesn't exist anymore, and without it the guys that are (validly) proud of themselves for the hard work they did to get where they are want to tell people about the experience, while the guys that are (validly) proud of themselves for choosing a specialization and being very good at that, think the "uphill both ways in the snow" kind of talk sounds either like we're crazy, or we're lying. Because they've never experienced a world where that would or could happen (and that's a GOOD thing, because it means the developer experience is getting less obscure and more inclusive... and not at all a knock on newer developers)
Just a thought. I'm not well read-up on this latest schism hahaha.
Really great insight, I hadn't thought about how different generations might think about the subject.
Miyamoto Musashi said it best : You must understand that there is more than one path to the top of the mountain.
(Miyamoto Musashi, A Book of Five Rings)
The absolute worst thing we can do as an industry is churn out a generation of developers who ONLY understand one framework/library. Frameworks come and go. Chances are that while ReactJS or Angular might be popular today, they won't be the hot, trendy libraries in 10 years. Having true developers who understand the full-stack is absolutely essential to the longevity and health of the industry.
I will take that claim one step further, though, it's not JUST about understanding the back-end (e.g., NodeJS) and the front-end (e.g., React): developers really need to understand the underlying fundamentals of computer science. Don't fully understand how your application runs on top of your selected OS? Get a book and start poking around on the machine until you at least understand the gist of it. How else will you know how to thoroughly investigate and track down the cause of a production outage? Don't understand how your database actually stores data? Get a book and start poking around. How else will you know why your database model is not scalable due to the amount of data you are storing?
In my opinion, the lack of understanding the fundamentals is at least partially a result of coding camps that give you a two week intro to some language/framework and promise to take you from totally inexperienced newbie to professional. Sure, they might teach you enough to land a job writing front-end or back-end code in the language of choice, but you never learned the underlying principles that power that technology, or how exactly all the pieces fit, so once the industry moves onto a new hot, trendy technology, these developers will be fighting one another for whatever jobs remain until eventually even those dry-up.
sigh it seems like the industry is moving in an unhealthy direction right now, and the attempts to criticize full-stack developers as being liars and frauds only further reinforces this assessment.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.