Once upon a time, there were Full Stack Developers, but as time progressed, they disappeared. Now, all we have are impostors. People trying to be full stack, but failing. The Full Stack Developer is now as obsolete as a unicorn.
Back when I started programming, you could get by only knowing one language and a couple of supporting “languages”.
My story is similar to many from my generation. I learned a little Basic to catch the programming bug. Then I tried Pascal and moved on to C before I went back to school where I learned COBOL, JCL and CICS. Mostly it was COBOL.
It didn’t take long to learn any of those languages because the language was the language. Things didn’t move quickly. CICS was simple. And we only needed enough JCL to get our programs to compile.
The Beginning of Complexity
Once I graduated, I moved into the world of PCs. Here, I quickly adopted Clipper, a dBase III compiler. Once again, there wasn’t a lot to know and I was able to quickly become an expert in the language. Not because I was any super smart programmer, but because there wasn’t much to know. In fact, at my first job, there was so little to know that I was able to easily be a one-man IT department.
And yet, I still see most job request advertising for “Full Stack Developers”
Is that even possible?
What Does Full Stack Mean?
When we first started developing web applications, two things were true. They weren’t very complicated, and they didn’t use a lot of technology. Keep in mind that in the beginning, our biggest issue was cross browser compatibility. This kept us from advancing quickly. So, a typical web application would do 99% of the work on the server and make it all look good with CSS. HTML wasn’t that complicated. So, one developer could, with a little effort, keep everything they needed to know in their head.
The Boiling Frog
And yet, companies still want “Full Stack Developers”
The Emperor Has no Clothes
Is there no one who can see that this is a recipe for disaster?
I think programmers kind of like being able to dabble in several different technologies. Spend a little time here. A little time there. Here a little, there a little. It certainly isn’t boring.
But, the problem with this is all your code suffers. Oh, sure, I’m definitely a proponent in learning multiple languages. The more you learn, the better you get. But, I’m also a proponent of being an expert in one of them. At least one at a time. And there is the problem. Because we have to know so much, we can’t possibly be an expert in anything.
Because I don’t currently even know what I don’t know, my code suffers. Which leads to my next point.
Bad for Business
Business at some level understands that having one guy who is the IT department isn’t going to work well. You don’t see any jobs advertised for that.
But “Programming” gets lumped together as one giant thing. But I’ll tell you. Work with a guy who really knows CSS. Or really knows Angular. Or really knows HTML. Two things would happen. Quality code would be produced much faster. The code would have fewer bugs. And the other developers, would probably become better in the areas they are weak in. This means that hiring a Full Stack developer is costing business more, even if they pay more for the individual experts.
Why I Care
Some may accuse me of being some old dude who can’t find a job. Trust me, I have no problem finding work! No. The reason I care is because I’m sick of working on the crappy code left behind by guys who either didn’t invest the time to learn how to code correctly using the tools they had, or lacked the experience to know where to even start.
I’m Not The Only One
When I first wrote this article, I had no idea this was such a hot topic. Some agree. Others disagree. All seem pretty passionate in their view. Many didn’t seem to read the whole article.
But here’s the deal, I’m not the only one. A quick search for “Full Stack Developer Myth” brings up the following articles:
- The Full Stack Developer Is a Myth
- The Myth of The Full-Stack Unicorn Developer (love the title)
- The Myth of the Full-Stack Developer
- The Myth of the Full Stack Developer
And that’s just the first four I could find.
To be fair, a small company may think they need to hire someone who can do it all. But, they’d be better off hiring a “Full-Stack Agency” who has specialist in each area. Unfortunately, my experience has shown a company who should be using an agency also has no clue about the skill level they should be hiring.
I’m not sure I have an answer for the dilemma I’ve presented. Show your manager this article? Refuse to take Full Stack jobs?
No, I doubt those will work.
What I’ve been doing is interviewing for jobs on the strength of what I’m an expert in. It doesn’t always work. But for the companies that recognize that I know way more than most of their developers who are just getting by, this lands me a secure, well-paying place in the dev shop.
Spread the word. Full Stack developers don’t really exist. The best developers are specialist and business would do well to hire specialist over generalist.