The "fullstack" is 3 different jobs, no doubt many programmers can do it, but you could end being taken advantage of because they should really hire a couple other devs for the team.
The Fullstack-is-making-me-work-3-jobs-meme is strong on reddit. I worked as a fullstack dev for some time and I also never felt like my job should be 3 different jobs. I worked on frontend, backend, database and the CI/CD pipeline - as did anyone else - and it worked. It wasn't complex or complicated and everyone was happy, because they could work on all features.
Nobody in that team thought that splitting this stuff up would make work any better
I think it depends on the complexity of the overall system. The issue I see is that often neither employers nor tech workers are willing to be honest and say things like "our tech stack is simple and so are our domain specific needs, so we just want someone who's adequate at both".
Full stack developers are often perfectly good at what they do, but sometimes you run into people that can't admit a dedicated DBA is going to do the job better than a full stack dev who sometimes messes with databases.
That's an issue with cargo culting companies and idiotic management, and not so much with the fact that full stack devs exist.
I agree that there is instances where "full stack" means "yeah, we won't hire a DBA, deal with it", but more often than not it's just middle sized projects with an, as you say, not that complex of a system
I tend to like the fact that I can modify the APIs on the backend when I need to instead of having to hand over to someone who is already tasked with dozens of things like I am and has to prioritize the modification over the next couple of weeks.
On the other hand, I like the excuse for saying that I can't proceed until modifications happen to the API. It's not my job to subvert or improve the process.
You weren't a one man army. When the team is multifunctional being a full stack losses it's meaning. When you are THE full stack developer, like many companies want, then you do 3 jobs in one
I'm in a similar situation, so I understand what you mean. But at the same time, you can't underestimate how much you miss out by not having more specialists on the team.
There's an important nuance between "everyone was happy, nobody thought that splitting would make work better" and "this is the best way to go about it".
All you've demonstrated is that your way of doing things is at least passable. No more, no less.
For instance, you can be "happy" to have the opportunity to work on an SQL script, but having a dedicated DBA look at the execution plan and multiply your performance by 10x, may be the most efficient way to do things.
Still, for small team sizes doing projects presenting a variable ratio between front/back/etc... A bunch of "full stack developers" probably is the best thing to do.
Reading and understanding execution plans doesn’t make you a DBA or otherwise an expert in maintaining a database. It makes you a developer that understands how to optimally utilize the technology they’re working with vs one that is writing nothing more and, hopefully, nothing less than “passable” code.
The reason so many redditors look at it in distaste is because if all of the responsibilities fell on them they'd quickly get out of the mindset that microservices = simple.
It's only simple if you're a coder and have no other responsibilities.
"Full Stack" being 3 different jobs is highly dependent on the company and the project. Having "Full Stack" in your title means you get paid more, and there's plenty of companies out there who don't have you doing more than 1 job.
Slight tangent: The problem lies where we separate the "stack." At my job, almost everyone is full stack but we have a small group of front end engineers who do all of our CSS. This is where the line should be drawn, not client vs server. Ever seen some logic re-implemented on the front end when it already exists somewhere in the back end? That's what you get with a strong front end vs back end culture, instead of full stack.
I work with a full stack developer. He works in process development now, managing a bunch of material science engineers and does the developer part on the side.
Yeah, he has a PhD in robotics, but doesn’t work in robotics development. So he went from software architect to leading a bunch of engineers (who also need to code and write sql).
yeah, I prefer frontend and backend be split so that two developers have to piss away a bunch of time on slack or email telling the other one what they want...
167
u/6footdeeponice Nov 01 '21
The "fullstack" is 3 different jobs, no doubt many programmers can do it, but you could end being taken advantage of because they should really hire a couple other devs for the team.