Everybody is hiring full-stack engineers! Startups and big corporations throw big salaries for hiring such profiles. But let me tell you why you shouldn't contribute to that trend.
1. "Full-stack" is too vague 🌊
In the beginning, the label full-stack was coming with another precision: which stack? Nowadays, we just consider a full-stack having the mastery of front-end and back-end. But there is no one stack.
Back-end systems are composed of plenty of micro-services and integrations of different sorts. A front-end can be a website, a mobile app, a smartwatch app, etc. There are also dedicated stacks for Analytics and QA. So which stack are we talking about?
2. You are fooling yourself into thinking you are capable of everything 🎭
This is for a simple reason: time.
While you should always learn and improve, you can't overpromise. You are an important actor in the risks' evaluation! Put your overconfidence aside, and ask yourself: "Am I alright if I am wrong?"
3. Employers underestimate what being a full-stack engineer would actually mean 👨💼
In the past, being a full-stack meant working with HTML/CSS/JS on a LAMP (Linux, Apache, MySQL, PHP) stack. And use FTP to update your site.
Today full-stack means having the mastery of HTML, CSS, JS, SASS, React, NPM, Shell, Docker, Python, Linux, MySQL, Redis, AWS S3, AWS EKS, AWS EC2, Google Analytics, Selenium, Git, Travis CI, Kubernetes, etc.
There are many and many. And that makes our job more complicated than ever.
So in the end, what should you be? My answer is a software engineer. He/she is versatile by definition. Also, as a software engineer, you won't be trapped in any role and be able to grow your skills in the directions you want.
Photo by Iva Rajović on Unsplash
Top comments (5)
I completely agree that a « software engineer » is the correct title to describe a generalist.
The problem is that I need to write « FullStack .» I asked my clients how they are looking for a « generalist,» and most of them use the term « FullStack » to find people in that category.
It’s a lack of knowledge, I think so.
I agree with this. And most of the time they do not have a specific idea of what they want to build in the first place.
They assume that a full-stack dev will solve every problem they have.
I haven't even heard of half of em yet. Lol
I just say "developer" or "web developer" ;)
For people who are not familiar with our geeky world and who are asking what I do, I even respond with the old fashioned "computer programmer" - they know instantly what that is, while "developer" or "software engineer" would in many cases lead to a puzzled look :)
Wholeheartedly agree with this post.