Unicorn Swim Tube

Full Stack Developers: Unicorn? Or Reality?

What exactly is a full stack developer? Someone who can work both the front end and back end of an application. Boom, mission accomplished. That wrapped up faster than usual, right?

Let’s be honest, though. It’s a bit more complicated than that. If you were to ask ten developers what constitutes a full stack developer, you’d get eleven different opinions. Lob the same question at a conference hall full of developers, and you’re bound to hear a spirited discussion. Post the question on a message board, and you may ignite a flame war. So let’s get into it.

Everyone Calls Themselves a Full Stack Developer

Well, not everyone. According to a Stack Overflow survey, 28% of developers call themselves full stack developers. More respondents called themselves a full stack developer than any other role. The next highest title was back-end developer, at 12.2%. Of course, these are titles people apply to themselves. However, Stack Overflow notes that those calling themselves full stack developers in their survey are, on average, comfortable in five or six coding languages and frameworks. Everyone else averaged around four.

Everyone Wants a Full Stack Developer

Look at any list of in-demand jobs and you’ll see full stack developer. Indeed says it’s the second best job in the world. Coding bootcamps like to point out that a person who can do everything is better than a team of people.

JavaScript Rules

Why does every self-described full stack developer know JavaScript? It’s the most popular language on earth. This January, GitHub released their annual Octoverse report, which indicated that Javascript has had “most contributors in public and private repositories, organizations of all sizes, and every region of the world,” for years. It’s the standard language of the web platform. 94.9% of all websites use it.

But JavaScript is more than web browsing. You can also find it in server-side and in databases. The term full stack developer doesn’t necessarily imply that the developer is a master of all aspects of development, but you’d expect a full stack developer to be a JavaScript master.

What Other Languages? And Which Stack Are We Talking About?

A full stack developer probably knows HTML and CSS, since these are the building blocks of the web. And they probably know something about databases and cloud storage, so maybe add SQL and something like Azure to their skill set. And maybe they know some frontend design, so expect to see UI or UX on their resume.

But, as you’ve probably seen, we’re running into a serious problem. Which stack are we talking about? The mobile stack? The web stack? Some other stack?

And we should talk about the stack itself. Saying it’s front-end and back-end is overly broad. A more thorough accounting of the stack could include virtualization, security, hosting, containers, scaling, package management, server management, databases, search, config management, framework, and some other stuff we’ve probably forgotten.

The Argument Against

One CTO writes that someone who’s truly a full stack developer probably shouldn’t be programming. Instead, they should be acting as a systems architect or integration engineer. That’s how valuable a full stack developer’s set of skills truly is.

Another argument worth considering: a full stack developer is a unicorn. Development is a rapidly expanding field, there are multiple disciplines involved, and a team of specialists might make more sense than expecting to find one developer who can do everything. Besides, this argument goes, companies asking for full stack developers might not actually know what they need; asking for a full stack developer is simply easier.

Some experts think that the majority of full stack developers are misrepresenting themselves. Richard Szalay, Technical Director at Mullenlowe Profero, says, “I think that most, if not all, ‘Full Stack’ developers are actually ‘front end with some back end experience’ or vice versa.”

Finally, there’s a school of thought that holds that full stack developers used to exist, but no more. Peter Yared, CTO of Sapho, says that we are in the middle of a major and rapid expansion of complicated technology that requires experts at each tier. Writing about today’s full stack, he says, “I’d wager that there are zero individuals with advanced-level knowledge in each of these areas that would be capable of single-handedly delivering this next generation kind of application.

The Takeaway

It’s easy to see why job sites are full of postings for full stack developers. Who wouldn’t want an employee who has working knowledge of every possible skill in an entire field? But when we put it that way, maybe it’s also easy to understand why real full stack developers are rarer than resumes, job postings, and water cooler chatter would lead us to believe.