The Myth of the Full Stack Developer…
Because you are a tech developer, you also have the extraordinary opportunity to turn into a unicorn– a unicorn developer, that is.
In the tech world, there’s no individual quite as rare and magical as a true full stack developer. Depending on who you ask, full stack developers are either myth or legend.
Before we delve into the benefits and challenges of becoming a full stack developer, let’s talk about what full stack means.
What Is a Full Stack Developer, Anyway?
Aaron Sempf, Head of Tech at Tribal Worldwide, suggests that a full stack developer is, by necessity, experienced in various elements of a stack. “Only an individual who has had exposure to and experience in each of the elements of a stack can truly call themselves a full stack developer.”
Is It Truly Possible to Become a Full Stack Developer?
The answer depends on who you ask.
According to Richard Szalay, Technical Director at Mullenlowe Profero, most “full stack” developers have not truly mastered front end and back end. “I think that most, if not all, ‘Full Stack’ developers are actually ‘Front End with some Back End experience’ or vice versa.
“Maintaining a deep knowledge of both front end tools, libraries, and techniques (down to browser-specific quirks), as well as backend architecture to the point of multi-threading or clustering at scale requires years of experience dedicated to each in addition to the time to keep up to date with how those areas are changing. Depending on the scale of technologies in question, one could even argue that true mastery of both frontend and backend is impossible.”
Szalay posits that developers claiming to be full stack are actually aspiring to another position altogether. “It’s also worth considering that ‘Full Stack’ has almost become a term for a junior-to-mid developer aspiring, sometimes a little prematurely, to be a ‘Solution Architect’ in the more modern and pragmatic sense of the role. In this sense, it becomes something of a tautology.”
How Long Does It Take To Become a Full Stack Developer?
If you’d like to become a full stack developer, how much of your life will you need to invest into the process? The answer varies from a few years to never.
Technical Director Richard Szalay is in the “never” camp. When asked this question, he shares, “I’ll let you know when I find out. I’ve been keeping myself up to date with numerous client and server technologies for 17 years and not only am I still improving my engineering techniques, but my CSS is still pretty weak compared to the front end guys I work with.
“More practically, I think it depends entirely on the size and complexity of the stack. If someone is maintaining a simple LAMP server stack, a medium-sized front end that is limited to a single set of frameworks/libraries, and natural limits on both traffic and data growth, then I’m sure they would become comfortable with that within a few years even if they’re starting from scratch.
“On the other hand, if you’re working in an agency/consultancy where it’s important for security/reliability/maintainability reasons to keep up to date with various areas of front end tooling, database types, AI, serverless, etc, then the answer veers closer to ‘never’.”
For Chen Lin, Senior Full Stack Web Developer at Bambora, is a bit more optimistic. Working as a full stack developer himself, Lin suggests a timeframe of three years minimum “to become a very junior full stack web developer because there are so many different languages and frameworks for a full stack web developer [to learn].”
To Lin’s point, it takes years to master each skill. If you hope to be a full stack developer, you’ll need to reach mastery or, at the very least, proficiency and familiarity with each stack of technologies.
Sempf agrees with Lin. “I would say on average a ‘Full Stack’ developer would need three to six years to attain the exposure to and experience working across a given stack. But plainly said, a Jnr, is not a “Full Stack”. Mid to Senior and Senior can be full stack, as long as they’ve had the exposure and experience.”
For Sempf, the time it takes to reach full stack mastery depends on the individual. “There are the unicorns out there who only need to be exposed to something once and can effectively do it again. But there are those who don’t learn as fast.”
Are More Employers Looking for Full Stack Developers?
As a developer, should you aspire to be a jack of all trades (full stack) or is it better to specialize in one stack (also known as half stack)?
To answer this question, consider the type of company you’d like to work for. If you’re reaching for a larger company, it’s better to specialize. Larger companies can afford to hire more developers to round out both their frontend and backend teams. However, for smaller businesses, especially startups, they’re looking to hire a developer who knows a little bit of everything. In this type of environment, you’ll need to wear more than one hat.
Szalay shares his insight. “Relying exclusively on full stacks developers only really works at the lower ends of overall system complexity and when the stakes are relatively low. Once the business needs to focus on both, say, a best-of-class front end experience as well as needing to scale their backend to handle a massive surge in usage, then they will need to hire (or grow) technology specialists in those areas.”
Szalay suggests full stack developers are the right solution for the startup environment. “For most small startups, full stack developers can really save a lot of time with the day-to-day build out of the system, using freelancers to assist with the initial build of anything more complex.”
However, he emphasizes that full stack developers may not have a long term role in the company. “Once the complexity (or popularity) of the system hits a certain level, specialists are naturally going to be required.”
Lin agrees. “Most of startups have limited budgets, and expects one person to work on as many areas as possible.”
“I have worked as advisor on a few start-ups,” shares Sempf. “I’ve seen first-hand the fast paced nature of the start-up environment. Having an individual who can work across an entire Stack to do the work of a team of specialists is invaluable.”
What’s the Best Advice for Becoming a Full Stack Developer?
We asked our tech professionals to share their best advice for any aspiring full stack developer.
Szalay suggests that you dive deep instead of broad. “Go deeper rather than just learning new tools: Learn how multi-threading works; Read the CSS spec to understand selector specificity; Contribute bug fixes to the OSS libraries you use; and for the love of god, read the HTTP spec – the number of experienced developers out there (frontend and backend) that don’t understand HTTP caching or correct status code usage makes me wonder how the internet keeps working at all.”
Sempf suggests that you focus on your strengths and weaknesses, not amassing more stack knowledge. “Are you visually inclined, are you logically inclined, do you have a passion for math or problem solving, etc. Study, play, experiment in the area you find your strengths. If you enjoy what you do, then picking up new skills alongside your strengths will come with time and exposure, and you never know, one day you might find yourself a ‘full stack.’”
Find Out More About Top Graduate Programs
Check out these companies